Struts2 标签

Struts2主要支持三种视图技术:JSP 、FreeMarker、Velocity。


使用Struts2标签的步骤和使用JSTL的步骤相同,只需在JSP中使用taglib指令引入标签库的tld文件中的uri,并指定后缀即可。

<%@ taglib uri="/struts-tags" prefix="s"%>
Struts2标签主要分为UI标签和通用标签两大类:

UI标签用来生成页面中的元素,如form、textfield、password等;

通用标签用来实现控制逻辑、数据逻辑等。

1、form

form标签用来生成表单,常用属性有action,还可以指定theme属性(simple、xhtml(默认)、Ajax)

<s:form action="Register" ></s:form>

2、textfield

textfield可以用来输出一个HTML的文本框。

<s:textfield name="age" label="Input your age"></s:textfield>
<s:textfield name="address" key="address.label"></s:textfield>
3、password

password用来输出一个HTML的密码框。

<s:password name="pwd" key="pwd.label"></s:password>
4、submit

submit用来输出一个HTML的提交按钮。

<s:submit key="register.button"></s:submit>
5、checkbox

checkbox用来输出HTML的复选框按钮。

<s:checkbox label="reading" name="hobbies" value="reading"/>
<s:checkbox label="cooking" name="hobbies" value="cooking"/>
<s:checkbox label="traveling" name="hobbies" value="traveling"/>
6、radio

radio输出HTML的单选按钮。

<s:radio list="{'male','female'}" name="sex" label="sex"></s:radio>
7、head

head标签用来包含必须的CSS和JavaScript文件,常在<head></head>之间使用。

<head>
    <s:head />
</head>
8、datetimepicker

datetimepicker可以生成日历,但是必须同时使用head标记,以便导入框架中必要的CSS和JavaScript文件

<s:datetimepicker label="Birthday" value="2014-07-18" toggleType="wipe" toggleDuration="300" name="birthday" />

非表单UI标签

UI中除了表单,还有一些其他的信息,如错误信息、友好提示信息等。

非标单UI标签就是指这些生成非标单元素的UI标签。

1、actionerror

输出存在的所有Action级别的错误消息

2、actionmessage

输出存在的所有Action友好提示消息

3、fielderror

输出存在的所有Field级别的错误消息

4、date

根据指定的格式,输出name指定的日期

<%
	Date Date = New Date();
	request.setAttribute("date",date);
%>
<s:date name="%{#request.date}" format="MM/dd/yy hh:mm" />

控制标签

1、if/else if/else

if/else if/else实现分支逻辑

<%@taglib uri="/struts-tags" prefix="s"%>
	<s:set name="score" value="78" ></s:set>
	<s:if test="%{#score>90}">
		<s:text name="Good"></s:text>
	</s:if>
	<s:elseif text="%{#score>70}">
		<s:text name="OK"></s:text>
	</s:if>
	<s:else>
		<s:text name="Bad" ></s:text>
	</s:else>

2、iterator

iterator是迭代标记,可以用来迭代集合或数组

	<table border=1>
	<s:iterator value="{'beijing','shanghai','tianjin','liaoning','dalian'}" status="st">
	<tr>
	<td><s:property value="#st.getIndex()+1" /></td>
	<td><s:property /></td>
	</tr>
	<s:iterator>
	</table>

数据标签

1、bean

bean标签用来实例化一个对象,标签体中使用param标签调用对象的setXXX方法对属性赋值。

	<s:bean name="vo.Customer" id="cust">
			<s:param name="custname">xiaoming</s:param>
			<s:param name="pwd">password</s:param>
	</s:bean>

2、set

set标记赋予一个变量某个值,并将该变量存储到特定范围内。

	<s:bean name="vo.Customer" id="cust">
			<s:param name="custname">xiaoming</s:param>
			<s:param name="pwd">password</s:param>
	</s:bean>
	<s:set name="customer" value="cust" scope="session"></s:set>
	${sessionScope.customer.custname}

3、property

property用来输出值栈中的属性值。

<s:set name="customer" value="cust" scope="session"></s:set>
	<s:property value="#session.customer.custname"/>

4、param

param标签用来传递属性,往往作为其他标签的子标签使用,例如在bean标签中使用。

	<s:bean name="vo.Customer" id="cust">
			<s:param name="custname">xiaoming</s:param>
			<s:param name="pwd">password</s:param>
	</s:bean>







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值