利用JSP开发wml手机网页的几个例子

本文介绍如何使用JSP技术快速生成动态WAP页面,包括开发环境搭建、基本规则说明及示例代码,展示如何结合WML实现复杂应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

11.6 JSP技术在WAP开发中的应用


使用JSP(Java Server API)技术可以简单而快速地在WAP终端上生成动态的WAP页面,而且能够利用JSP的诸多功能,实现复杂的WAP应用。我们仍以WML为例,讲解JSP技术在WAP开发中的应用。

11.6.1 基本规则
使用JSP技术前,首先要建立它的开发环境。一般是在Windows NT上安装并建立Java Server Web Development Kit(JSWDK),其版本可为1.01版或更高的版本。

为了测试和浏览JSP实现的WAP应用,还需要安装WAP模拟器(浏览器),如Nokia WAP Toolkit,并安装Java Runtime Environment (JRE) 1.2.2或以上版本。

完成以上准备工作之后,就可以按照以下的基本规则使用JSP编写WML程序了。

(1) WML的标签和语句均可直接写在JSP程序中。

(2) 如果想使用JSP来处理WML的标签和语句,则需要使用“<%”和“%>”引起来,格式为:

<%

……(JSP编写的WML语句行);

%>

例如,以下几行语句就是利用JSP的out.println来输出WML的标签和语句:

<%

out.println("<p>");

out.println("Hello from script code!<br/>");

out.println("</p>");

%>


(3) JSP编写的WML语句要用引号(" ")引起来,然后再用括号括起来,而且后面还要加上分号( ; ),格式为:

JSP对象.方法/关键字(" ……WML标签或语句行 ");

例如,下面就是反映JSP书写WML语句格式的例子:

out.println("Hello from script code!<br/>");

(4) WML的文件类型可以使用JSP的response对象进行声明,也可以在声明页面语言时一块儿声明,它们的格式分别如下:

<% response.setContentType("text/vnd.wap.wml"); %>

或 <%@ page language="java" contentType="text/vnd.wap.wml" %>

(5) 最后的程序文件保存时要采用“.jsp”的扩展名,即保存为JSP的程序文件。JSP将被编译成Java源文件,最后成为servlet。

例子

<%@page contentType="text/vnd.wap.wml" import="java.util.*" %>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="Example" title="Example JSP/WML">
<p align="center">Data current as of <%= new Date() %></p>
<p>
<a title="Data1" href="#data1">More Details</a>
</p>
</card>

<card id="data1" title="DataOne">
<p>This is the card called DataOne</p>
</card>
</wml>


例子

<?xml version="1.0" ?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

<%--greeting.jsp--%>
<% response.setContentType ("text/vnd.wap.wml"); %>
<wml>
<card id="start" title="Hello">
<p>
What is your name?
<input name="Name" type="text" />
<do type="accept">
<go href="#next" />
</do>
</p>
</card>

<card id="next" title="Hello">
<p>
<%
for (int i=0; i<2; i++)
out.println ("Good-day, $(Name)! <br />");
%>
</p>
</card>
</wml>

例子(jsp使用数据库,wml显示)

<?xml version="1.0" ?>

<%@ page language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jstl/sql_rt" %>


<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

<% response.setContentType ("text/vnd.wap.wml"); %>
<wml>

<sql:setDataSource var="datasource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
user="root" password="12345"/>

<sql:query var="items" dataSource="${datasource}">
SELECT id, name, city FROM employee
</sql:query>
<card id="start" title="Hello">

<table border="1">
<th>name</th><th>city</th>
<c:forEach var="row" items="${items.rows}">
<tr>
<td><c:out value="${row.name}"/></td>
<td><c:out value="${row.city}"/></td>
</tr>
</c:forEach>
</table>
</card>

</wml>

简单的数据表test employee
name city
tom harbin
jerry changchun
cat shenyang
rat tieling
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值