简化 Ajax 和 Java 开发,第 2 部分: 使用约定最小化设置和配置
http://tech.ddvip.com 2008年06月12日 社区交流
内容摘要:本文将展示如何使用 JSP 标准标记库(JSTL)和 JSP 标记文件实现数据绑定、页面导航和样式约定,从而简化开发和维护。您将了解如何构建带有动态属性的定制 JSP 标记,使快速更改应用程序变得更加容易。此外,本文最后一节包含了一个使用 Ajax 提交 Web 表单的示例。
<managed-bean>
<managed-bean-name>dataModel</managed-bean-name>
<managed-bean-class>formsdemo.AddressBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
本节演示如何使用 JSTL 和 JSP 标记文件实现相同的输入组件。您可能想知道为什么 JSF 框架中的组件可用时还要这样做。如果将本文中的 textarea.tag 文件与 JSF 框架中实现等价组件的 Java 类的源代码相比较,您就会完全了解 JSP 标记文件带来的好处。然后,请考虑一下您需要在 JSF 框架或另一个第三方库未提供的其他组件上投入多少工作吧。
使用 JSTL 处理 Web 表单
清单 3 展示了一个包含一个 <textarea> 元素的简单 Web 表单,该元素的值是从一个 AddressBean 实例获取的。<jsp:useBean> 标记创建 JavaBean 对象并将其放到 JSP request 作用域中。address 属性的值被包含在带有 JSTL 标记 <c:out> 的 Web 页面中。
清单 3. JSP 页面使用 JSTL 对数据绑定进行编码
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<jsp:useBean id="dataModel" scope="request" class="formsdemo.AddressBean"/>
<form method="POST">
<c:if test="${pageContext.request.method == 'POST' && !empty param.address}">
<c:set target="${dataModel}" property="address" value="${param.address}"/>
</c:if>
<textarea name="address" rows="3" cols="30"
><c:out value="${dataModel.address}"/></textarea>
<br><input type="submit" value="Submit"/>
</form>
来源:ibm 作者:Andrei Cioroianu 责编:豆豆技术应用