Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性。实现了更好的代码复用。Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求。
头声明:<%@ taglib uri ="/struts-tags" prefix ="s" %>
struts2的标签可以分为五大类:
(1)条件标签
条件标签主要有
您是admin!
您是manager!
您没有身份!
test:条件判定语句,值为boolean类型。
(2)迭代标签
1、遍历普通List、数组
//后台存放数据到list中
List list = newArrayList();
list.add("aaa");list.add("bbb"); list.add("ccc");
3、 status属性的应用
序列号:
姓名:
邮件:
是否第一条:
是否最后一条:
是否偶数行:
是否奇数行:
当前行数:
id:指定集合中元素在值栈中的名称。
(1)action标签
name:struts.xml中指定Action的名称
executeResult:指定是否将Action的处理结果包含到本页面中.默认值为false(即不包含)
ignoreContextParam:指定该页面的请求参数是否需要传入调用的Action中,默认值是false(即传入参数)
注意:<s:param>是以request方式的值的,而不是以参数传值,所以request.getParameter("")会获取不到值,通过request.getAttribute("")方式可以获取到。
(2)date标签
name:表示要输出的日期对象。
format:输出的日期格式。
nice:指定是否输出指定日期与当前时刻之间的时差。若nice="true",则format属性失效,只输出当前时刻与指定日期间的间隔;若nice=“false”,则是输出指定日期。
(3)bean标签
bean标签用于创建javaBean实例,需要java类提供相应的getter、setter方法
name: 必填,指定要实例化的JavaBean的实现类
id: 可选。如指定了该属性,则该Javabean实例会被放入StackContext中(不是ValueStack),从而允许直接通过该id属性来访问该JavaBean实例。如果未指定,则该Javabean实例会被放入ValueStack中,该标签结束,生成的子集被移出valuestack栈。
注意:java类String类型的属性赋值时,必须再加个单引号' '。
(4)parma标签
param标签用于为其他标签添加参数,用法如下:
参数值
注意:字符串赋值时要加单引号。详见bean标签用法。
(5)property标签
property标签用于输出一个属性值。
value:指定属性的名称,默认值是栈顶元素。
escape:指定输出的内容是否要经过HTML转义,默认值是true。escape="false"表示会将类似"
default:指定默认值。
(6)
获取用户列表
(7)
(1)表单标签
//注意标签的value值是单引号。
enctype:共有3个值:
1)application/x-www-form-urlencoded:默认值,使用范围广,但向服务器发送大量文本、包含非ASCII字符的文本或二进制数据时该编码效率很低。
2)multipart/form-data:上传二进制数据,使用该值即可完整的传递文本文件数据。
3)text/plain:主要使用于发送电子邮件的应用。
namespace:设置action的包命名空间。
注意:当该标签设置了namespace属性后,action属性设置不能加.action后缀。
(2)
List user; //后台添加数据到list中
list属性(必设):
必须是一个可以迭代的源,如为一个List, Map, Set等
1)如果集合为javabean:
2)如果集合为list:
3)如果集合为map:
listKey:设置后台传送的数据项。
listValue:设置前台显示的数据项。
emptyOption:设置是否有空选项。
value:设置默认显示数据列表list中的选项。
headerValue:设置下拉框头条显示数据。
headerKey:设置下拉框头条后台传回的数据。
(3)
属性说明详见
(4)
属性说明详见
(5)
fieldVaule:设置选中时向后台传送的数据(默认不设时返回的是布尔类型)。
value:设置前台显示的数据。
(6)
value:默认选中的选项的key值。
(7)
(8)
(1)
actionerror标签用于输出存储在ActionError中的值。
Action类中添加actionerror信息:addActionError("出错了!");
(2)
actionmessage标签用于输出存储在ActionMessage中的值。
Action类中添加actionmessage信息:addActionMessage("出错了!");
(3)
fielderror标签用于输出FieldError中的值。默认错误信息显示在所对应field标签的上方。
Action类中添加fielderror信息:addFieldError("user.name", "用户名不能为空!");
注意:(1) actionerror与actionmessage功能差不多,不过在中加上
(2) 在添加错误信息前最好先clearErrorsAndMessages();来清空之前加载的错误信息。
<%@taglib prefix="sx" uri="/struts-dojo-tags" %>
记得在中加上
(1)
href:异步请求的资源地址。
updateFreq:自动更新div内容的间隔,以毫秒为单位。
autoStart:页面加载后是否启动定时器,默认为true。
delay:第一个异步请求开始之前等待的时间,以毫秒为单位。
loadText:当请求正在处理时显示的文本。
showLoadingText:是否显示loadText值,默认为false。
errorText:当请求失败时显示的文本。
indicator:当请求正在处理时具有这个id的元素将被显示。
executeScript:执行服务器返回内容中的javascript代码,默认为false。
formId:指定表单id,表单字段将被序列化并作为参数传递。
(2)
用户信息列表
用户信息列表
序列号
用户名
href:异步请求的资源地址。
targets:被更新的元素列表。
loadText:当请求正在处理时显示的文本。
showLoadingText:是否显示loadText值,默认为false。
errorText:当请求失败时显示的文本。
indicator:当请求正在处理时具有这个id的元素将被显示。
executeScript:执行服务器返回内容中的javascript代码,默认为false。
formId:指定表单id,表单字段将被序列化并作为参数传递。
(3)
(4)
(5)
提示:
(6)
showRootGrid:是否显示根节点,默认为true。
showGrid:是否显示结点间的连接线,默认为true。
treeSelectedTopic:选中时的时间。
(7)
Local Tab 1
Local Tab 2
Local Tab 3
closable:设置该tab标签是否可关闭。
href:加载资源。若为jsp页面,则加载该页面到该tab中。
preload:设置是否预先加载,默认为true。
cssStyle:用于设置tab选项卡大小。
refreshOnShow:设置是否每次单击选项卡重新加载内容,默认为false。
disabled:设置选项卡是否失效,默认为false。
labelposition:设置选项卡标头的显示位置,可以是top, right, bottom, left。
selectedTab:设置默认选中的选项卡。
转载请注明转自本文,原文链接地址:http://blog.csdn.net/czw2010/article/details/8161230
参考:
[1] http://struts.apache.org/docs/tag-reference.html