struts 标签
来源:互联网 发布:淘宝店主手机号 编辑:程序博客网 时间:2024/05/17 09:44
1、通用标签
1.1 property
1.2 set
I 默认为action scope,会将值放入request 和 ActionContext 中
II page、request、session、application
1.3 bean
1.4 include (对中文文件支持有问题,不建议使用,如需包含,改用jsp包含)
1.5 param
1.6 debug
2、控制标签
2.1 if……else if…… else
2.2 iterator
I collections map enumeration iterator array
2.3 subset
3、UI标签
3.1 theme
I simple xhtml(默认) css xhtml ajax
4、AJAX标签
4.1 补充
5、$、#、% 的区别
5.1 $ 用于 i18n 和struts 配置文件
5.2 # 取得ActionContext 的值
5.3 % 将原来的文本属性解析为 ognl,对于本来就是 ognl 的属性不起作用
I 参考<s:property 和 <s:include
范例一:通用标签
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><%@taglib uri="/struts-tags" prefix="s" %><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Struts-Tags 学习</title></head><body><ol><li>property:<s:property value="username"/></li><li>property取值为字符串:<s:property value="'username'"/></li><li>property设定默认值:<s:property value="admin" default="管理员"/></li><!-- false 表示不将HTML标签解析成字符串,而是直接作为HTML标签所代表的内容进行输出,这里<hr/>是一条横线,escape默认为true --><li>设定HTML:<s:property value="<hr/>" escape="false"/></li><!-- ########################################################################################## --><!-- set标签用的并不多,比如将一个长名字set成一个短名字的时候可以使用 --><!-- 定义一个变量,值为username的值,下面的两个方法都可以取得这个值 --><li>set 设定adminName值(默认为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><!-- scope="page",当前页面有效 --><li>set 使用name属性(现在已经废弃这种属性了,直接使用var)的时候,设定范围:<s:set name="adminPassWord" value="password" scope="page"/></li><li>set 从相应范围取值:<%=pageContext.getAttribute("adminPassWord") %></li><li>set 使用var的时候,默认范围就是ActionContext:<s:set var="adminPassWord" value="password"/></li><li>set 从 ActionContext 取值:<s:property value="#adminPassWord"/></li><li>set 使用var的时候,指定session范围:<s:set var="adminPassWord" value="password" scope="session"/></li><li>set 从 session范围 取值:<s:property value="#session.adminPassWord"/></li><!-- ########################################################################################## --><li>bean 定义bean,并使用param 来定义新的属性值<!-- 必须var 定义之后才能取值,如果不适用var就必须在bean标签之内取值才能取到 --><s:bean name="com.haizhu.Tags.Dog" var="myDog"><!-- name="name"是将Dog类中的name赋值为Oudy,注意,一定要在双引号之内加上单引号,不然会将Oudy当做OGNL表达式的 --><s:param name="name" value="'Oudy'"></s:param></s:bean><!-- 当使用var之后,就可以使用"#xx"的方式取值,因为使用var之后就将这个bean放在ActionContext中了 --><s:property value="#myDog.name"/></li><!-- ########################################################################################## --><li>include 标签<!-- 一般使用<%@ include %>和<jsp:inclue >这两种方式 --><s:include value="/_include1.html"></s:include></li><li><s:set var="incPage" value="/_include2.html"></s:set><!-- %{} 的作用就是将#incPage当做OGNL表达式而不是字符串 --><s:property value="%{#incPage}"></s:property></li></ol></body></html>
范例二:遍历标签
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><%@taglib uri="/struts-tags" prefix="s" %><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Struts-Tags 学习</title></head><body><ol><li> if……else if……else 的使用<!-- 一个属性可以传递多个值(在地址栏通过后缀的形式传递过来),取值的时候如果确定取第一个值,可以使用[0]来指定 -->age=<s:property value="#parameters.age[0]"/><s:if test="#parameters.age[0] < 0"> Wrong age!</s:if><s:elseif test="#parameters.age[0] < 0"> Too young!</s:elseif><s:else>Yeah!</s:else></li><!-- 上面这个例子可以使用set来简化写法 --><li>age=<s:property value="#parameters.age[0]"/><s:set name="age" value="#parameters.age[0]"/><s:if test="#age < 0"> Wrong age!</s:if><s:elseif test="#age < 0"> Too young!</s:elseif><s:else>Yeah!</s:else></li><li><s:if test="#parameters.aaa == null"> null </s:if></li><!-- ########################################################################################## --><li>遍历集合:<br/><s:iterator value="{1,2,3}"><s:property/> |</s:iterator></li><li>自定义变量:<br/><s:iterator value="{'aaa','bbb','ccc'}" var="iter"><!-- #表示去取ActionContext中的值,这里为什么用呢?难道iter放入ActionContext中了? --><!-- 对的,看到 var 就表示放在了ActionContext中了!所以,可以用#访问。 --><s:property value="#iter.toUppperCase()"/></s:iterator></li><li>使用status<br/><s:iterator value="{'aaa','bbb','ccc','ddd'}"><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></li><li>遍历map<br/><!-- 定义map的时候,前面有个#,跟list不一样的地方 --><s:iterator value="#{1:'aaa',2:'bbb',3:'ccc'}"><s:property value="key"/> | <s:property value="value"/> <br/></s:iterator></li><li><s:iterator value="#{1:'aaa',2:'bbb',3:'ccc'}" var="myMap"><s:property value="#myMap.key"/> | <s:property value="#myMap.value"/></s:iterator></li></ol></body></html>
项目范例:
<s:if test="population.currentAddress != null"> <td class="title"><label>现居地址</label></td> <td colspan="4" class="content"> <span id="alertCon">${population.currentAddress}</span> </s:if> <s:else> <td class="title"><label>无房原因</label></td> <td colspan="4" class="content"> <span>${population.noHouseReason}</span> </s:else>
- struts标签
- Struts标签
- Struts标签
- struts标签
- struts 标签
- Struts标签
- Struts标签
- struts标签
- Struts标签
- Struts标签
- struts标签
- struts标签
- struts标签
- Struts标签
- Struts标签
- Struts标签
- struts标签
- Struts-标签
- (22) - 简要知识点(二) (String类,System类,Random类,等等)
- Ubuntu下mysql字符集设置
- C++程序员必看书单
- 关于端口占用问题
- Windows 8.1 & Windows Phone 开发环境安装遇到的问题
- struts 标签
- (元)黄公望---富春山居图(中国十大传世名画之八) 高清图下载
- 使用poi技术操作Excel表(二)
- 坠落凡间的struts2(7)---struts2的国际化
- 现代Java开发
- struts的类型转换(一)内置的类型转换器
- UItableView
- 格式化输出LONGLONG类型
- 构造方法