struts标签使用举例-logic

来源:互联网 发布:centos 安装flash插件 编辑:程序博客网 时间:2024/06/05 12:39
1. logic:empty 该标签是用来判断是否为空的。如果为空,该标签体中嵌入的内容就会被处理。该标签用于以下情况: 1)当Java对象为null时; 2)当String对象为""时; 3)当java.util.Collection对象中的isEmpty()返回true时; 4)当java.util.Map对象中的isEmpty()返回true时。 eg. < logic:empty name="userList"> ... < /logic:empty> 该句等同于: if (userList.isEmpty()) { ... } 2. logic:notEmpty 该标签的应用正好和logic:empty标签相反,略。 3. logic:equal 该标签为等于比较符。 eg1. 比较用户的状态属性是否1,若为1,输出"启用"; < logic:equal name="user" property="state" value="1"> 启用 < /logic:equal> eg2. 如果上例中的value值是动态获得的,例如需要通过bean:write输出,因struts不支持标签嵌套,可采用EL来解决该问题。 < logic:equal name="charge" property="num" value="${business.num}"> ...... < /logic:equal> 4. logic:notEqual 该标签意义与logic:equal相反,使用方法类似,略。 5. logic:forward 该标签用于实现页面导向,查找配置文件的全局forward。 eg. < logic:forward name="index"/> 6. logic:greaterEqual 为大于等于比较符。 eg. 当某学生的成绩大于等于90时,输出“优秀”: < logic:greaterEqual name="student" property="score" value="90"> 优秀 < /logic:greaterEqual> 7. logic:greaterThan 此为大于比较符,使用方法同logic:greaterEqual,略; 8. logic:lessEqual 此为小于等于比较符,使用方法同logic:greaterEqual,略; 9. logic:lessThan 此为小于比较符,使用方法同logic:greaterEqual,略; 10. logic:match 此标签比较对象是否相等; eg1. 检查在request范围内的name属性是否包含"amigo"串: < logic:match name="name" scope="request" value="amigo"> < bean:write name="name"/>中有一个“amigo”串。 < /logic:match> eg2. 检查在request范围内的name属性是否已“amigo”作为起始字符串: < logic:match name="name" scope="request" value="amigo" location="start"> < bean:write name="name"/>以“amigo”作为起始字符串。 < /logic:match> eg3. < logic:match header="user-agent" value="Windows"> 你运行的是Windows系统 < /logic:match> 11. logic:notMatch 此标签用于比较对象是否不相同,与logic:match意义相反,使用方法类似,略。 12. logic:messagePresent 该标签用于判断ActionMessages/ActionErrors对象是否存在; eg. 如果存在error信息,将其全部输出: < logic:messagePresent property="error"> < html:messages property="error" id="errMsg" > < bean:write name="errMsg"/> < /html:messages> < /logic:messagePresent > 13. logic:messagesNotPresent 该标签用于判断ActionMessages/ActionErrors对象是否不存在,使用方法与logic:messagePresent类似,略 14. logic:present 此标签用于判断request对象传递参数是否存在。 eg1. user对象和它的name属性在request中都存在时,输出相应字符串: < logic:present name="user" property="name"> user对象和该对象的name属性都存在 < /logic:present> eg2. 若有一个名字为“user”的JavaBean,输出对应字符串: < logic:present name="user" > 有一个名字为“user”的JavaBean。 < /logic:present> eg3. < logic:present header="user-agent"> we got a user-agent header. < /logic:present> 15. logic:notPresent 此标签用于判断request对象传递参数是否不存在,意义与了logic:present相反,使用方法类似,略。 16. logic:redirect 该标签用于实现页面转向,可传递参数。 eg1. < logic:redirect href="http://www.yueluo.net"/> 17. logic:iterator 用于显示列表为collection的值(List ,ArrayList,HashMap等)。 eg1. 逐一输出用户列表(userlList)中用户的姓名: < logic:iterate id="user" name="userList"> < bean:write name="user" property="name"/>< br> < /logic:iterate> eg2. 从用户列表中输出从1开始的两个用户的姓名 < logic:iterate id="user" name="userList" indexId="index" offset="1" length="2"> < bean:write name="index"/>.< bean:write name="user" property="name"/>< br> < /logic:iterate> eg3. logic:iterator标签的嵌套举例 < logic:iterate id="user" indexId="index" name="userList"> < bean:write name="index"/>. < bean:write name="user" property="name"/>< br> < logic:iterate id="address" name="user" property="addressList" length="3" offset="1"> < bean:write name="address"/>< br> < /logic:iterate> < /logic:iterate>