Struts2通用标签:
数据标签:
1. Property
用于输出值栈中的对象的属性值
<s:property value=”username” default=”默认”/>
2.set
将一个值赋给指定范围内的变量。它将值放到action上下文。
<s:set name=”name” value=”user.username” scope=”action”/>
Scope: 可以是page,request,session,application,action中的一个
3.Push
用于把一个值压入栈顶
4.Param
用于其他标签的子标签,用于为其它标签提供参数。
5.Bean
用于实例化一个javaBean对象,如果指定id,则他建的bean将被放入到OgnlContext中。
当bean 标签结束的时候,创建的实例将不能访问。如果指定了id, 在标签外部可以访问。
可以在内部使用param标签。
6.Action
允许直接在jsp页面中调用action.如果将标签的executeResult属性设为true,那么action的输出也将被包含到本页面中。
7.Include
类似于jsp的<jsp:include>
可以在内部使用param标签。
8. url
用于创建一个URL.可以在内部使用param标签。如果param标签的value属性的值是一个数组或者iterator,那么所有的值都将被附加给URL.
9.i18n和text
I18n用于将一个资源包放入值栈,text用于从资源包中获取消息。
10.Date
用于格式化输出日期值。指定了id,格式化后的日期值不会输出,而是被保存到OgnlContext中。如果没有指定nice,也没有指定format,那么date标签将会在国际化资源包中查找struts.date.format键,并以这个键的值作为日期格式化样式。
11.Debug
用于调试,它在页面上生成一个“[Debug]”超链接,可以查看值栈和ActionContext中保存的所有对象。
控制标签:
1. If/elseif/else
2. Iterator
用于迭代一个集合,这里的集合可以是Collection,Map,Enumeration,Iterator,或者数组。IteratorStatus类的这些方法分别对应了count,index,even,odd(是否是奇数),first,last属性。
3. Append
用于将不同的迭代器组合在一起。
4. Merge
用于合并迭代器。和append标签的用法类似,区别就是对合并后的迭代器中的元素迭代顺序不一样。
5. Generator
Generator标签根据separator属性指定的分隔符,将val属性指定的值进行拆分,然后生成一个迭代器,压入值栈的栈顶。可以使用iterator 对拆分后的各个部分进行迭代。
6. subset
用于截取一个迭代器的子集。
7. sort
根据comparator属性指定的比较器对集合进行排序,可以使用iterator进行迭代。
UI标签:
1.表单标签的公共属性:form ${parameters.from}这个属性引用表单元素所在的表单。
2. Form
Enctype 上传文件时设为multipart/form-data
Validate true/false 是否执行客户端验证,只有使用xhtml或者ajax主题时才有效。
3. Textfield
Maxlength 输入字符的最大长度
Readonly 只读
Size 指定可视尺寸
4. Password
showPassword 是否显示密码
5. Textarea
Wap 指定多行文本的内容是否应该换行
6. Select
List 要迭代的集合
listKey 指定集合对象的哪一个属性作为选项的value
listValue 指定集合对象的哪一个属性作为选项的内容
multiple 设置为true则他建一个多选列表
size 设置下拉列表框可显示的选项个数
7. Optgroup
本身不能嵌套。可以在select 标签中使用一个或者多个optgroup标签。
List 要迭代的集合
listKey 指定对象的哪个属性作为选项的value
listValue 指定对象的哪个属性作为选项的内容
8. Radio
List 要迭代的集合
listKey 指定对象的哪一个属性作为选项的value
listValue 指定对象的哪一个属性作为选项的内容
9. Checkbox
fieldValue 指定在复选框选中时,实际提交的值
10. Checkboxlist
List 要迭代的集合
Listkey 指定使用集合对象中的哪一个属性作为选项的value
listValue 指定使用集合对象中的哪一个属性作为选项的内容。
11. Doubleselect
输出关联的两个html列表框,第二个列表框的内容随第一个列表框选中的选项而变化。
List 要迭代的集合
listKey
listValue 第一个列表框起作用
headerKey 首项
emptyOption 是否在第一个列表框添加一个空选项 空项
multiple 多选列表框
size 显示选项个数
doubleList
doubleListKey 第二个列表
doubleListValue
doubleSize 显示选项个数
doubleName 指定第二个列表框的name
doubleValue 初始选中项
12. Combobox
List 要迭代的集合
Maxlength 指定输入字符的最大长度
Size 可视尺寸
13. Optiontransferselect
由两个select以及它们中间的用于将选项在两个select之间相互移动的按钮组成。
List 要迭代的集合
Listkey
listValue
headerKey
headerVAlue 第一个列表的首选项
emptyOption 空项
multiple true 则为多选列表框
size
doubleId 指定第二个列表框的id
doubleList
doubleListKey
doubleListValue
doubleHeaderKey
doubleHeaderValue
doubleEmptyOption
doubleMultiple
doubleSize
doubleName 第二个列表框的name
doubleValue 初始选中项
leftTitle 左边的标题
rightTitle
addToLeftLagel 按钮向左的文本
addAlltoLeftLabel 全移到左边的文本
selectAllLabel 全选文本 改变按钮上的文本
leftUpLabel 向上
leftDownLabel
allowAddToleft 是否使用向左的按钮
allowAddAllToLeft true
allowSelectAll 是否使用全选按钮
14. Updownselect
15. Hidden
16. Submit
Type input,image,button
Src 为image类型的按钮设置图片地址
<s:submit value=”登陆” name=”method:login”/>
使用一些预定义的前缀来命名一个按钮,通过按钮的名字来改变执行的行为。
(1) method前缀,如上面:使用method前缀,来取代action默认的execute()方法的执行。
(2) action前缀:取代form标签指定的action
<s:submit value=”注册” name=”action:register”>
(3) redirect前缀
重定向到其他的URL
(4) redirect-action前缀
重定向到其它的action
17. reset
输出一个重置按钮 type: button,input
18. label
19. token
<s:token/>
用于防止表单的重复提交,需要启用TokenInterceptor或者TokenSessionInterceptor拦截器
20.Head
非表单标签:
1. Component
如果是jsp模板,你可以通过<s:property value=”%{parameters.key}”来获取对象
2. a
创建一个超链接
3.Actionerror,actionmessage,fielderror