Struts2标签库
Struts2标签库
介绍
Struts2拥有可以在视图上使用的控件标签,要在视图上使用Struts2标记,必须包含标记指令。通常指令为是:
<%@ taglib prefix="s" uri="/struts-tags"%>
所以所有Struts2标签的前缀都是s。
通用标签
数据标签
a标签
创建HTML的<a>
.此标记支持与url标签相同的属性,包括使用param标记的嵌套函数。
常用属性如下:
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
action | 可选 | String | 将超链接地址指向action |
href | 可选 | String | 超链接地址 |
id | 可选 | String | 设置HTML中的属性名称 |
method | 可选 | String | 如果超链接地址指向action,method同时可以为action声明所调用的方法 |
namespace | 可选 | String | 如果超链接的地址指向action,namespace可以为action声明名称空间 |
action标签
此标记可以使开发人员通过指定的操作名称和可选的命名空间直接从JSP页面调用操作。标记的内容用于呈现action的结果,除非指定了executeResul参数,否则将忽略在struts.xml中为此操作定义的任何结果处理器。
可以使用嵌套的param标记将参数传递给操作。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
executeResult | 可选 | String | 是否使用Action返回执行结果,默认值为false |
flush | 可选 | boolean | 输出结果是否刷新,默认为true |
ignoreContextParams | 可选 | Boolean | 是否将页面请求的参数传入被调用的Action,默认值为false |
name | 必须 | String | Action对象映射的名称,即struts.xml中配置的名称 |
namespace | 可选 | 指定名称空间的名称 | |
var | 可选 | String | 引用此action名称 |
bean标签
实例化符合JavaBeans规范的类。这个标签有一个主体,它可以包含许多{@link Param}元素来设置该类的任何mutator方法。
如果在BeanTag上设置了var属性,它会将实例化的bean放入堆栈的Context中。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
name | 必须 | String | 要实例化的bean的类名(必须遵守JavaBean规范) |
var | 可选 | String | 用于引用被推入栈堆的值的名称 |
date标签
用不同的方式格式化Date对象
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
format | 可选 | String | 设置格式化日期样式 |
name | 必须 | String | 日期值 |
nice | 可选 | Boolean | 是否输出给定日期与当期日期的时差,默认值为false,不输出时差 |
var | 可选 | String | 格式化时间的名称变量,通过此变量可以对其进行引用 |
include标签
include标签类似JSP中的<include>
标签,用于包含一个页面,并且通过param标签向目标标签中传递请求参数。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
value | 必须 | String | 用于包含一个JSP或者Servlet |
param标签
param标签用于为参数赋值,可以作为其它标签的子标签。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
name | 可选 | String | 设置参数名称 |
value | 可选 | Object | 设置参数值 |
property标签
用于获取数据值,并且输出到页面中。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
default | 可选 | String | 如果value属性为空,使用默认值 |
value | 可选 | Object | 要显示的值 |
escapeHtml | 可选 | Boolean | 是否逃避HTML |
escapeJavaScript | 可选 | Boolean | 是否逃避JavaScript |
escapeXml | 可选 | Boolean | 是否逃避XML |
escapeCsv | 可选 | Boolean | 是否转移CSV |
set标签
用于定义一个变量,同时设置变量的作用域(application,session,request)。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
scope | 可选 | String | 设置变量的作用域,取值为application,request,session,page或action,默认为action |
value | 可选 | Object | 设置变量值 |
var | 可选 | String | 定义变量名 |
url标签
用于创建URL,此标签提供多种属性以满足不同格式的URL
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
action | 可选 | String | Action对象的映射URL,即对象的访问地址 |
anchor | 可选 | String | 此URL的锚点 |
encode | 可选 | Boolean | 是否编码参数 |
escapeAmp | 可选 | Boolean | 是否将&符转义为& |
forceAddSchemeHostAndPort | 可选 | Boolean | 指定是否强制添加方案,主机和端口 |
includeContext | 可选 | Boolean | 是否应将实际上下文包含在URL中 |
includeParams | 可选 | String | includeParams属性的值可能为’none’,‘get’或’all’ |
method | 可选 | String | 使用的action方法 |
namespace | 可选 | String | 要使用的命名空间 |
scheme | 可选 | String | 指定生成URL所使用的协议 |
value | 可选 | String | 指定生成URL的地址值 |
控制标签
if、elseif、else标签
if标签是一个流程控制标签,用于处理某一逻辑的多种条件。通常表现为“如果满足某条件,则执行某种处理;否则执行另一种处理。”if标签可以单独使用,也可以与elseif标签和/或单个/多个else标签一起使用。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
test | (if、elseif)必须 | Boolean | 用于确定是否要显示标签主体的表达式 |
iterator标签
迭代器将迭代一个值。可迭代值可以是以下任何值:java.util.Collection,java.util.Iterator,java.util.Enumeration,java.util.Map或数组。
名称 | 是否必选 | 类型 | 说明 |
---|---|---|---|
begin | 可选 | Integer | 如果指定,则迭代将在该索引上开始 |
end | 可选 | Integer | 如果指定,迭代将在该索引上结束(包括) |
status | 可选 | Boolean | 如果指定,则每次迭代时都会将一个instanceof IteratorStatus推入堆栈 |
step | 可选 | Integer | 如果指定,迭代索引将在每次迭代时增加此值。它可以是负值,在这种情况下,‘begin’必须大于’end’ |
value | 可选 | String | 迭代的迭代源,否则对象本身将被放入新创建的List中 |
var | 可选 | String | 用于引用推入值堆栈的值的名称 |
UI标签
表格标签
常用的表格标签
名称 | 说明 |
---|---|
form | 用于生成一个form表单 |
hidden | 用于生成一个HTML中的隐藏表单元素,相当于使用HTML代码中的<input type="hidden"> |
textfield | 用于生成一个HTML中的文本框元素,相当于使用HTML代码中的<input type="textfield "> |
password | 用于生成一个HTML中的密码框元素,相当于使用HTML代码中的<input type="password "> |
radio | 用于生成一个HTML中的单选按钮元素,相当于使用HTML代码中的<input type="radio "> |
select | 用于生成一个HTML中的下拉列表元素,相当于使用HTML代码中的<select><option></option></select> |
textarea | 用于生成一个HTML中的文本框元素,相当于使用HTML代码中的<textarea></textarea> |
checkbox | 用于生成一个HTML中的选择框元素,相当于使用HTML代码中的<input type="checkbox "> |
checkboxlist | 用于生成一个或多个HTML中的选择框元素,相当于使用HTML代码中的<input type="checkboxlist "> |
submit | 用于生成一个HTML中的提交按钮元素,相当于使用HTML代码中的<input type="submit "> |
reset | 用于生成一个HTML中的重置按钮元素,相当于使用HTML代码中的<input type="reset "> |
表单标签常用的元素
名称 | 说明 |
---|---|
name | 指定表单元素的name属性 |
title | 指定表单属性的title属性 |
cssStyle | 指定表单的style属性 |
cssClass | 指定表单的class属性 |
required | 用于在lable上加“*”号 ,其值为Boolean类型。如果为true,则添加“*号” |
disable | 指定元素的disable属性 |
value | 指定表单元素的value属性 |
labelposition | 指定表单元素label的位置,默认为left |
requireposition | 用于指定在表单元素label添加“*”号的位置,默认为right |