8.1 Struts2的Taglib概述
8.1.1概述
Struts2自带了一套非常强大的标签库,不仅自身功能强大,而且与Struts2中的其它部分无缝结合。在学习之前,先来简要回忆一下标签到底是干什么的?
估计大多数朋友都使用过JSTL,那自然熟悉JSTL的核心标签,也就是c标签。在JSP页面上使用标签,可以分离JSP上的Java代码与HTML。其中HTML用来管理把数据展现在哪儿,而Java代码用来获取数据。
先来看一个例子,如果现在request的user属性上有一个放好的UserModel,如果不使用标签,直接用Java代码来访问数据,将会写出如下的代码:
java代码:
- <%@page import="cn.javass.user.UserModel" %>
- <%UserModel user = (UserModel)request.getAttribute("user"); %>
- <table border="1">
- <tr>
- <td colspan="2">用户信息</td>
- </tr>
- <tr>
- <td>姓名</td>
- <td><%=user.getName()%></td>
- </tr>
- <tr>
- <td>年龄</td>
- <td><%=user.getAge()%></td>
- </tr>
- </table>
你会看到,上例的HTML与Java代码混杂,而且在操作的时候,Java是一种强语言类型,要导入所有要使用的类,还要手工到request中去获取属性,非常麻烦。
但是,如果使用c标签加上EL表达式,就清晰了许多:
java代码:
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <table border="1">
- <tr>
- <td colspan="2">用户信息</td>
- </tr>
- <tr>
- <td>姓名</td>
- <td><c:out value="${user.name}"/></td>
- </tr>
- <tr>
- <td>年龄</td>
- <td><c:out value="${user.age}"/></td>
- </tr>
- </table>
现在再引用request中的user属性的时候,不需要知道它的类型,想要引用它的name属性,只需要使用EL表达式${user.name}即可。这样,c标签就代替了原来的Java代码,使得页面变得整洁;而且由于EL是弱类型语言,不需要知道user的类型,因此,那些烦人的导入也就不用写了。
了解了标签是做什么的,接下来来说明一下标签被调用的时机:标签是在JSP页面初始化的时候被调用,然后生成相应的HTML代码。所以,学习某些可见标签的捷径,就是在页面初始化之后,查看它的源文件,看看生成的HTML代码到底是什么样的。
8.1.2 Struts2标签的分类
Struts2标签包含很多内容,可以按照其功能大致分为四类:
- 数据标签:用来从值栈上取值或者向值栈赋值。
- 控制标签:控制程序的运行流程,比如分支和循环控制。
- UI标签:用来显示UI界面的标签,多会生成HTML。
- 杂项标签:用于完成其它功能的标签,比如生成URL和输出国际化文本等
当然,这些并不是Struts2标签库的全部,除此之外,还有一些其他作用的标签,比如ajax标签。
接下来讲述一些主要的标签,由于有些标签的属性太多,不能一一列举,只能讲述一个标签主要的属性。
私塾在线网站原创《研磨struts2》系列
转自请注明出处:【http://sishuok.com/forum/blogPost/list/0/4077.html】
欢迎访问http://sishuok.com获取更多内容
分享到:
相关推荐
struts taglib使用示例 struts taglib使用示例 struts taglib使用示例struts taglib使用示例 struts taglib使用示例
taglib(struts2标签).doc
struts-taglib-1.3.10.jar struts-taglib.jar taglib.jar
struts-taglib-1.3.8.jar struts-taglib-1.3.8.jar
pager-taglib 安装包和使用手册。
通过网上搜集资料,实现了一个struts2+hibernate+pager-taglib的分页小例子,大家在运行例子前,请一定要看包里面的readme.txt文件。里面有环境的搭建。
struts2.0 taglib struts2.0 标签库,总结了从的全部
关于Struts Taglib的现实介绍
struts2的jar之一struts2-core-2.0.14.jar
Struts2中实现自定义标签很简单,主要分为3步: 1.创建taglib文件(.tld),编写标签声明。 2.编写自定义标签类。 3.在页面中使用标签。 下面以一个自定义的分页标签为例,进行说明。 其实,开发自定义标签并不...
主要介绍了struts2的标签的详细使用例子说明
taglib(struts1.3)源码 供网络受限的朋友下载
绝对可以解决这个这个问题。Struts初学者绝对可以受用的方法。
Struts开发指南之Taglib.doc
struts2 标签 Taglib (Struts2标签库)
适用于struts2的pager-taglib 把pager.offset修改成了pagerOffset 不用再在每个Action里定义pager的
Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供了大部分标签,可以在各种表现技术中使用。包括最常用的jsp页面,也可以说Velocity和FreeMarker等模板技术...
Struts2_01FirstDemo : 跑通第一个Struts2的实例 Struts2_02CURD : 关于Struts2的增、删、改和查 实际业务中数据来自数据库,从DAO层查询,本实例使用静态资源的方式模拟, 主要是关于CURD的操作方式。 Struts2_03...
struts2的标准标签库与ognlAPI及相关合集.