1. logic:empty 該標(biāo)簽是用來判斷是否為空的。如果為空,該標(biāo)簽體中嵌入的內(nèi)容就會(huì)被處理。該標(biāo)簽用于以下情況: 1)當(dāng)Java對(duì)象為null時(shí); 2)當(dāng)String對(duì)象為""時(shí); 3)當(dāng)java.util.Collection對(duì)象中的isEmpty()返回true時(shí); 4)當(dāng)java.util.Map對(duì)象中的isEmpty()返回true時(shí)。 eg. <logic:empty name="userList"> ... </logic:empty> 該句等同于: if (userList.isEmpty()) { ... } 2. logic:notEmpty 該標(biāo)簽的應(yīng)用正好和logic:empty標(biāo)簽相反,略。 3. logic:equal 該標(biāo)簽為等于比較符。 eg1. 比較用戶的狀態(tài)屬性是否1,若為1,輸出"啟用"; <logic:equal name="user" property="state" value="1"> 啟用 </logic:equal> eg2. 如果上例中的value值是動(dòng)態(tài)獲得的,例如需要通過bean:write輸出,因struts不支持標(biāo)簽嵌套,可采用EL來解決該問題。 <logic:equal name="charge" property="num" value="${business.num}"> ...... </logic:equal> 4. logic:notEqual 該標(biāo)簽意義與logic:equal相反,使用方法類似,略。 5. logic:forward 該標(biāo)簽用于實(shí)現(xiàn)頁面導(dǎo)向,查找配置文件的全局forward。 eg. <logic:forward name="index"/> 6. logic:greaterEqual 為大于等于比較符。 eg. 當(dāng)某學(xué)生的成績大于等于90時(shí),輸出“優(yōu)秀”: <logic:greaterEqual name="student" property="score" value="90"> 優(yōu)秀 </logic:greaterEqual> 7. logic:greaterThan 此為大于比較符,使用方法同logic:greaterEqual,略; 8. logic:lessEqual 此為小于等于比較符,使用方法同logic:greaterEqual,略; 9. logic:lessThan 此為小于比較符,使用方法同logic:greaterEqual,略; 10. logic:match 此標(biāo)簽比較對(duì)象是否相等; eg1. 檢查在request范圍內(nèi)的name屬性是否包含"amigo"串: <logic:match name="name" scope="request" value="amigo"> <bean:write name="name"/>中有一個(gè)“amigo”串。 </logic:match> eg2. 檢查在request范圍內(nèi)的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"> 你運(yùn)行的是Windows系統(tǒng) </logic:match> 11. logic:notMatch 此標(biāo)簽用于比較對(duì)象是否不相同,與logic:match意義相反,使用方法類似,略。 12. logic:messagePresent 該標(biāo)簽用于判斷ActionMessages/ActionErrors對(duì)象是否存在; eg. 如果存在error信息,將其全部輸出: <logic:messagePresent property="error"> <html:messages property="error" id="errMsg" > <bean:write name="errMsg"/> </html:messages> </logic:messagePresent > 13. logic:messagesNotPresent 該標(biāo)簽用于判斷ActionMessages/ActionErrors對(duì)象是否不存在,使用方法與logic:messagePresent類似,略 14. logic:present 此標(biāo)簽用于判斷request對(duì)象傳遞參數(shù)是否存在。 eg1. user對(duì)象和它的name屬性在request中都存在時(shí),輸出相應(yīng)字符串: <logic:present name="user" property="name"> user對(duì)象和該對(duì)象的name屬性都存在 </logic:present> eg2. 若有一個(gè)名字為“user”的JavaBean,輸出對(duì)應(yīng)字符串: <logic:present name="user" > 有一個(gè)名字為“user”的JavaBean。 </logic:present> eg3. <logic:present header="user-agent"> we got a user-agent header. </logic:present> 15. logic:notPresent 此標(biāo)簽用于判斷request對(duì)象傳遞參數(shù)是否不存在,意義與了logic:present相反,使用方法類似,略。 16. logic:redirect 該標(biāo)簽用于實(shí)現(xiàn)頁面轉(zhuǎn)向,可傳遞參數(shù)。 eg1. <logic:redirect href="http://www.chinaitlab.com"/> 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開始的兩個(gè)用戶的姓名 <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標(biāo)簽的嵌套舉例 <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> |