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

1.3.4 Strut2的标签库

Struts 2的标签库也是Struts 2的重要组成部分,Struts 2的标签库提供了非常丰富的功能,这些标签库不仅提供了表现层数据处理,而且提供了基本的流程控制功能,还提供了国际化、Ajax支持等功能。

通过使用Struts 2的标签,开发者可以最大限度地减少页面代码的书写量。

看下面的JSP页面的表单定义片段。

<!-- 定义一个表单 -->
<form method="post" action="basicvalid.action">
      <!-- 下面定义三个表单域 -->
    名字:<input type="text" name="name" /><br />
    年纪:<input type="text" name="age" /><br />
    喜欢的颜色:<input type="text" name="favorite" /><br />
      <!-- 定义一个输出按钮 -->
    <input type="submit" value="提交" />
</form>

上面页面使用了传统的HTML标签定义表单元素,还不具备输出校验信息的功能,但如果换成如下使用Struts 2标签的定义方式:

<!-- 使用Struts 2标签定义一个表单 -->
<s:form method="post" action="basicvalid.action">
    <!-- 下面使用Struts 2标签定义三个表单域 -->
    <s:textfield label="名字" name="name" />
    <s:textfield label="年纪" name="age" />
    <s:textfield label="喜欢的颜色" name="answer" />
    <!-- 定义一个提交按钮 -->
    <s:submit />
</s:form>

则页面代码更加简洁,而且Struts 2的标签库默认提供了页面布局功能,还提供了输出错误提示功能,因此使用起来非常方便。

提示:

Struts 2的标签库的功能非常强大,该标签库可以完全替代JSTL的标签库。而且Struts 2的标签支持OGNL(Object Graph Notation Language)表达式语言,功能非常强大。