Sturts2 struts2Tags

property标签

property标签用于取得value的属性值

        <li>property: <s:property value="username"/> </li>
         <!-- proerty标签中value中值默认解析为OGNL表达式 ,
      		想获取为字符串则添加单引号。
         -->
		<li>property 取值为字符串: <s:property value="'username'"/> </li>
		<li>property 设定默认值: <s:property value="admin" default="管理员"/> </li>
		<!-- escape默认为ture,设置为false可以将获取的字符解析为HTML -->
		<li>property 设定HTML: <s:property value="'<hr/>'" escape="false"/> </li>
		<hr />

set标签

当你访问复杂的OGNL表达式,或者需要通过复杂计算得到的值,
用set标签设置一个变量,将值保存在其中。
1. var指定变量名称。
2. value指定变量值。
3.scope指定设置范围

        <li>set 设定admin值(默认是在request和ActionContext设定): <s:set var="adminName" value="username" /></li>
		<li>set 从request中取值: <s:property value="#request.adminName" /></li>
		<li>set 从ActionContext中取值: <s:property value="#adminName" /></li>
		<li>set 设定var,范围session: <s:set var="adminPassword" value="password" scope="session"/></li>
		<li>set 使用#取值ֵ: <s:property value="#adminPassword"/> </li>
		<li>set 从相应的范围取值ֵ: <s:property value="#session.adminPassword"/> </li>
		<hr />

bean标签

1.var属性设定此类在actionContext的属性名。
2.在<s:bean>标签内部对象在值栈中创建。
3.在<s:bean>外部标签外对象放在actioncontext中。
4.<s:param>标签设置对象属性的值。

        <li>bean :
			<s:bean name="com.struts2.tags.action.Dog" var="myDog">
				<s:param name="name" value="'oudy'"></s:param>
			</s:bean>
			actionContext取值:
			<s:property value="#myDog.name"/>
		</li>
		<hr />

inculde标签

静态包含。

在包含文件出现中文时,会出现乱码,可以直接用jsp中的包含。

($), (%)和(#)的用法 简述

1.%{}将非OGNL表达式解析为OGNL表达式,对于已经是OGNL表达式不起作用。
2.${}用于struts2文件中获取参数。
3.#用于页面获取actioncontext的属性。

        <li>
		    包含静态文件:
			<s:include value="/include.html"></s:include>
		</li>
		<li>
			%的用法:
			<s:set var="inpage" value="'/include.html'"></s:set>
			<s:include value="%{#inpage}"></s:include>
		</li>
		<hr/>

fielderror标签

获取自定义错误信息

<!--与Action类中this.addFieldError("filderror.test", "wrong");所对应-->
<s:fielderror fieldName="filderror.test" ></s:fielderror>

iterator标签

1.遍历普通集合,value往其中添加值。

<s:iterator value="{1, 2, 3}" >
		 <!--遍历集合中所用元素并打印出来-->
		  <s:property/> 
		</s:iterator>
		</li>
		<li>ؔ֨遍历自定义变量:<br />
		<!-- x相当于for循环中i -->
		<s:iterator value="{'aaa', 'bbb', 'ccc'}" var="x">
			<s:property value="#x.toUpperCase()"/> |
		</s:iterator>
		</li>
		<li>使用当前状态(status):<br />
		<s:iterator value="{'aaa', 'bbb', 'ccc'}" status="status">
			<s:property/>  
			遍历过的元素总数<s:property value="#status.count"/> |
			遍历过的元素索引<s:property value="#status.index"/> |
			遍历时的元素是偶数位<s:property value="#status.even"/> |
			遍历时的元素是奇数位<s:property value="#status.odd"/> |
			是第一个元素<s:property value="#status.first"/> |
			是最后一个元素<s:property value="#status.last"/>
			<br />
		</s:iterator>
		<hr/>

2.遍历map
添加map集合时得使用#号

<li>
		<s:iterator value="#{1:'a', 2:'b', 3:'c'}" >
			<s:property value="key"/> | <s:property value="value"/> <br />
		</s:iterator>
		</li>
		
		<li>
		<s:iterator value="#{1:'a', 2:'b', 3:'c'}" var="x">
			<s:property value="#x.key"/> | <s:property value="#x.value"/> <br />
		</s:iterator>
		</li>
发布了47 篇原创文章 · 获赞 5 · 访问量 2029

猜你喜欢

转载自blog.csdn.net/OVO_LQ_Start/article/details/104202388
今日推荐