Struts 2.x权威指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.6.3 使用UI标签简化表单页面

前面已经提到过,Struts 2的一个重要组件就是标签库。Struts 2标签库中不仅提供了前面所示的基本控制、数据输出等功能,还提供了非常丰富的UI组件,除了提供一系列的主题相关标签外,还提供了一系列的表单相关标签。

Struts 2为常用表单域都提供了对应的标签,下面是常用的表单域标签。

form:对应一个表单。

checkbox:对应一个复选框。

password:对应一个密码输入框。

radio:对应一个单选框。

reset:对应一个重设按钮。

select:对应一个下拉列表框。

submit:对应一个提交按钮。

textarea:对应一个多行文本域。

textfield:对应一个单行文本框。

关于这些界面相关的标签,同样会在后面章节有更详细的介绍。下面将使用Struts 2的表单相关标签简化用户登录的loginForm.jsp页面,修改的loginForm.jsp页面代码如下。

程序清单:codes\02\struts2qs3\WEB-INF\content\loginForm.jsp

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=GBK" />
    <title>登录页面</title>
</head>
<body>
<!-- 使用form标签生成表单元素 -->
<s:form action="login">
    <!-- 生成一个用户名文本输入框 -->
    <s:textfield name="username" label="用户名"/>
    <!-- 生成一个密码文本输入框 -->
    <s:textfield name="password" label="密  码"/>
    <!-- 生成一个提交按钮 -->
    <s:submit value="登录"/>
</s:form>
</body>
</html>

将该页面与前面的表单页面进行对比,我们发现该页面的代码简洁多了。因为使用了Struts 2的表单标签,定义表单页面也更加迅速。在浏览器中浏览该页面,将看到如图2.7所示的界面。

图2.7 使用Struts 2表单标签后的表单界面

当然,Struts 2的标签还有许多功能,此处先不详述,本书的后面章节将专门介绍Struts 2标签库的用法。