Strut 2的标签库
2007-08-23 12:14
Struts 2的标签库也是Struts 2的重要组成部分,Struts 2的标签库提供了非常丰富的功能,这些标签库不仅提供了表现层数据处理,而且提供了基本的流程控制功能,还提供了国际化、Ajax支持等功能。 通过使用Struts 2的标签,开发者可以最大限度地减少页面代码的书写。 看下面的JSP页面的表单定义片段: <!-- 定义一个Action --> <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> 则页面代码更加简洁,而且有更简单的错误输出。图1.10是上面使用Struts 2标签执行数据校验后的输出。
图1.10 使用Struts 2标签的效果 提示 Struts 2的标签库的功能非常复杂,该标签库几乎可以完全替代JSTL的标签库。而且Struts 2的标签支持表达式语言,这种表达式语言支持一个强大和灵活的表达式语言:OGNL(Object Graph Notation Language),因此功能非常强大。 |