现在的位置: 首页 > 综合 > 正文

struts第五篇:struts标签

2013年10月06日 ⁄ 综合 ⁄ 共 2738字 ⁄ 字号 评论关闭

本篇是struts标签的配置和使用,还有一些示例代码。

配置:

配置国际化支持,在struts-config.xml文件中加入如下配置:<message-resourcesparameter="MessageResources" />

最好提供国际化资源文件(MessageResources.properties),将该文件放到src下


先采用taglib引入

<%@taglib uri="http://struts.apache.org/tags-bean"prefix="bean"%>    

<%@taglib uri="http://struts.apache.org/tags-logic"prefix="logic" %> 


示例代码和效果:

<body>
	<h1>测试beanWrite标签</h1><br>
	<hr>
	<li>普通字符串</li><br>
	hello(标签): <bean:write name="hello"/><br>
	<p>
	<li>html文本</li><br>
	bj(default):<bean:write name="bj"/><br>
	bj(filter="true"):<bean:write name="bj" filter="true"/><br>
	bj(filter="false"):<bean:write name="bj" filter="false"/><br>
	<p>
	<li>格式化日期</li><br>
	today(default):<bean:write name="today"/><br>
	today(format="yyyy-MM-dd HH:mm:ss"):<bean:write name="today" format="yyyy-MM-dd HH:mm:ss"/>
	<p>
	<li>格式化数字</li><br>
	n(default):<bean:write name="n"/><br>
	n(format="###,###.#####"):<bean:write name="n" format="###,###.#####"/><br>
	n(format="###,###.00000"):<bean:write name="n" format="###,###.00000#"/><br>
	<P>
	<li>结构</li><br>
	姓名:<input type="text" name="username" value="<bean:write name="user" property="username"/>"> <br>
	年龄:<input type="text" name="username" value="<bean:write name="user" property="age"/>"> <br>
	所属组:<input type="text" name="username" value="<bean:write name="user" property="group.name"/>"> <br>
</body>


这些数据都在后台代码中已经设置到request中,代码很简单,这里就不写设置的过程了。

效果图:


判断empty present

<body>
	<h1>测试logic:empty,logic:notEmpty,logic:present,logic:notPresent</h1>
	<hr>
	<logic:empty name="attr1">
		atrr1为空<br>
	</logic:empty>
	<logic:notEmpty name="attr1">
		atrr1不为空<br>
	</logic:notEmpty>
	<logic:present name="attr1">
		atrr1存在<br>
	</logic:present>
	<logic:notPresent name="attr1">
		atrr1不存在<br>
	</logic:notPresent>
	<p>
	<logic:empty name="attr2">
		atrr2为空<br>
	</logic:empty>
	<logic:notEmpty name="attr2">
		atrr2不为空<br>
	</logic:notEmpty>
	<logic:present name="attr2">
		atrr2存在<br>
	</logic:present>
	<logic:notPresent name="attr2">
		atrr2不存在<br>
	</logic:notPresent>
	<p>
	<logic:empty name="attr3">
		atrr3为空<br>
	</logic:empty>
	<logic:notEmpty name="attr3">
		atrr3不为空<br>
	</logic:notEmpty>
	<logic:present name="attr3">
		atrr3存在<br>
	</logic:present>
	<logic:notPresent name="attr3">
		atrr3不存在<br>
	</logic:notPresent>
	<p>
</body>

后台设置代码为:

request.setAttribute("attr2", "");
request.setAttribute("attr3", new ArrayList());

其结果为:

atrr1为空,atrr1不存在  没有设置时,atrr1为空,也不存在

atrr2为空,atrr2存在
设置空字符串的时候,为空,但是存在

atrr3为空,atrr3存在
设置了空的ArrayList,为空,也存在

循环:

<body>
	<h1>测试迭代标签</h1>
	<hr>
	<table border="1">
		<tr>
			<td>姓名</td>
			<td>年龄</td>
			<td>所属组</td>
		</tr>
		<logic:empty name="user_list">
			<tr>
				<td colspan="3">没有符合条件的数据</td>
			</tr>
		</logic:empty>
		<logic:notEmpty name="user_list">
			<logic:iterate id="user" name="user_list">
				<tr>
					<td>
						<bean:write name="user" property="username"/>
					</td>
					<td>
						<bean:write name="user" property="age"/>
					</td>
					<td>
						<bean:write name="user" property="group.name"/>
					</td>
				</tr>
			</logic:iterate>
		</logic:notEmpty>
	</table>
</body>

后台代码为将人名循环设置到一个list中,在界面循环取得。

效果如下:

抱歉!评论已关闭.