Struts2:标签库
Posted Andy 胡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2:标签库相关的知识,希望对你有一定的参考价值。
使用struts标签库的jsp需要引入标签库
<%@taglib prefix="s" uri="/struts-tags"%>
url来自哪里?
struts2-core-2.3.16.1.jar
→META-INF
→struts-tags.tld
→Line11:<uri>/struts-tags</uri>
控制标签:分枝循环
<!-- 【分枝结构if else】 --> <s:if test="2==1"> 1==1 </s:if> <s:elseif test="3==2"> 2==2 </s:elseif> <s:else> 3==3 </s:else> <hr /> <!-- 【循环遍历】 --> <!-- set定义Map:井号{v:k},数字,字符串都可以 --> <s:set name="mymap" value="#{\'1\':\'中国\',2:\'大英帝国\',3:\'俄罗斯帝国\'}" /> <!-- set定义List:不加井号,字符串中不能只有一个字符,哪怕是全角字符 --> <s:set name="mylist" value="{\'中国\',\'日本\',\'韩国\'}" /> <!-- s:iterator value=可以加井号,不加也可以 --> <s:iterator value="mymap" var=\'per\'> <!-- 取var的下一层必须加井号 --> <s:property value="#per.value" /> <br /> </s:iterator> <hr /> <s:iterator value="mylist" var="per3" status="sta"> <s:property value="per3" /> <!-- var:当前元素(保存在context page作用域的一个变量) --> <!-- ___status:当前元素的状态,取其中的值必须加井号 --> index:<s:property value="#sta.index" /> count:<s:property value="#sta.count" /> <s:if test="#sta.even"> 偶数 </s:if> <s:elseif test="#sta.odd"> 奇数 </s:elseif> <s:else> </s:else> first:<s:property value="#sta.first" /> last:<s:property value="#sta.last" /> <br /> </s:iterator>
数据标签:显示数据
<!-- 【【数据标签】】 --> <!-- 【set定义值】 --> <!-- ___Scope存储的范围是在application、session、request、page……。 --> <!-- ___默认是存储在该stack context中。 --> <s:set var="v1" value="\'property:中国人\'" scope="session"></s:set> <!-- attr.***默认是从 page, request, session, then application scopes --> <s:property value="#attr.v1" /> <!-- 【date格式化日期 】 --> <% pageContext.setAttribute("d", new java.util.Date()); %><br> <s:property value="#attr.d" /> <br> <s:date name="#attr.d" format="公元yyyy年MM月dd日 hh:mm:ss.SSS" /> <!-- 【property】 --> <!-- ___1.输出(狭义)值栈,2.#输出stack context --> <!-- ___可以设默认值,如果没有value,取得是值栈顶部对象 --> <br> <s:property value="#request.a1" /> <br> <s:property value="#request.a1" default="万岁" /> <br> <s:property /> <s:debug />
UI标签:控件
<!-- 【【UI标签】】 --> <style> .c1 { background-color: #EEEEEE; } </style> <s:form> <!-- 不在form中不会每个控件占一行 --> <s:textfield name="nm" label="用户名" tooltip="提示" cssClass="c1" /> <s:password name="pwd" label="密码" tooltip="请输入密码" /> <!-- cols:有滚动条时只能输入3列 --> <s:textarea name="introduce" label="自我介绍" tooltip="提示" rows="2" cols="3" /> <!-- set定义List:不加井号,字符串中不能只有一个字符,哪怕是全角字符 --> <s:set name="weiList" value="{\'张辽\',\'徐晃\',\'乐进\',\'于禁\',\'张郃\'}" /> <!-- set定义Map:井号{v:k},数字,字符串都可以 --> <s:set name="wuMap" value="#{\'101\':\'黄盖\',\'102\':\'程普\',\'103\':\'周泰\',\'104\':\'太史慈\',\'105\':\'甘宁\'}" /> <!-- 【单选:关键属性:list】 --> <s:radio name="shu" list="{\'关羽\',\'张飞\',\'赵云\',\'黄忠\',\'马超\',\'魏延\'}" label="蜀国点将" tooltip="请点将" /> <!-- 【单选:取值为List】 --> <s:radio name="wu" list="weiList" label="魏国点将" /> <!-- 【单选:取值为Map】 --> <!-- 默认,listKey=\'key\',listValue=\'value\' --> <!-- 默认选中:value --> <s:radio name="wei" list="wuMap" label="吴国点将" listKey="value" value="\'太史慈\'" /> <!-- 【复选】也可以使用List或Map --> <!-- value:默认选中 --> <s:checkboxlist name="cwei" label="魏国" list="weiList" value="{\'张辽\',\'徐晃\'}" /> <s:checkboxlist name="cwu" label="吴国" list="wuMap" value="{\'张辽\',\'徐晃\'}" /> <!-- 【下拉列表:select】也可以使用List或Map --> <!-- headerKey & headerValue:加的一项,多是提示作用 --> <s:select name="swei" label="魏国" list="weiList" headerKey="" headerValue="曹操点将" /> <!-- 默认选项,使用Map时需是key的值 --> <s:select name="swu" label="吴国" list="wuMap" value="\'104\'" /> </s:form>
以上是关于Struts2:标签库的主要内容,如果未能解决你的问题,请参考以下文章