JSTL 操作符


el表達式的取值默認順序: 
    pageScope  requestScope  sessionScope  applicationScope 
    
結構,采用.導航,也稱為存取器   ${user.name}  ${user.class.name} 
                      輸出map   ${mapValue.key1} 
                     輸出數組   ${strArray[1]} 
                     輸出list   ${list[1].name} 
                     
el表達式的運算  
               ${1+2}=       3 
               ${10/5}=      2.0 
               ${10%3}=      1 
               ${10 div 2}=  5.0 
               ${10 mod 4}=  2 
               
el表達式對應的運算符 
                     等於  ==    eq 
                   不等於  !=    ne 
                     大於  >     gt 
                     小於  <     lt 
                 大於等於  >=    ge 
                 小於等於  <=    le 
                       與  &&    or 
                       或  ||    and 
                       非  !     not 
                       加  + 
                       減  - 
                       乘  * 
                     除以  /     div 
                     求莫  %     mod 
                     
el表達式判斷是否為空 
                    request.setAttribute("value1",null)                    ${empty requestScope.value1} = true 
                    request.setAttribute("value2","")                      ${empty requestScope.value1} = true 
                    request.setAttribute("value3",new ArrayList())         ${empty requestScope.value1} = true 
                    request.setAttribute("value4","i love you")            ${empty requestScope.value1} = false 
                    request.setAttribute("value4","i love you")            ${!empty requestScope.value1} = true 
                    
------------------------------------------------------------------------- 
web.xml的 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
id="WebApp_ID" version="2.4">  大於等於2.4 方可支持jstl 
先引入 standard.jar 和 jstl.jar 
jstl標簽的用法  在頁面引入  <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 

    輸出標簽 ----------- 
                 <c:out value="ppp" />                                              輸出   ppp 
                 <c:out value="null" default="ddd"/>                                輸出   ddd   可以設置默認值 
                 <c:out value="<font color="red">kkk</font>" escapeXml="false"/>    輸出 紅色的kkk    默認的escapeXml為true 
    賦值標簽 -----------     
                 <c:set value="123" var="jj" scope="session" />       此時有個名為jj,值為123的session ,默認的scope為page 
                                                          ${jj}       在頁面打印出123 
                 <c:remove var="jj" />                                將其刪除,可以指定scope,默認為page       
    邏輯標簽 ----------- 
                 <c:if test="?" />                                   ?:代表條件 可以用el表達式      
             ----------- 
                 <c:choose> 
                     <c:when test="?"> 
                        ......                                         相當於 if...else...   c:when 可以有多個,相當於else if 
                     </c:when> 
                     <otherwise> 
                       ...... 
                     </otherwise> 
                 </choose> 
循環控制標簽 ----------- 
                 <c:forEach items="${list}" var="u" >                   ${list}是一個集合 
                     ${u.name} 
                 </c:forEach> 
                 
                 
                 <c:forEach items="${list}" var="u" varStatu="ss">                  
                     <c:choose> 
                     <c:when test="u.age % 2 == 0"> 
                        <tr bgColor="red">                                  如果集合中的數字是偶數,則當行為紅色 
                     </c:when> 
                     <otherwise> 
                        <tr>    
                     </otherwise> 
                     </choose> 
                 </c:forEach> 
                 
                 
                 <c:forEach items="${list}" var="u" begin="2" end="8" step="2">                 輸出下表(從0開始)為2到8的元素,每次遞增2 
                     ${u.name}                                                                  將輸出u[2].name  u[4].name  u[6].name  u[8].name 
                 </c:forEach> 
                                   
                 Map m = new Map(); 
                 m.put("k1","v1");         
                 m.put("k2","v2");         
                 request.setAttribute("mapValue",m); 
                 
                 <c:forEach items="mapValue" var="ma"> 
                     ${ma.key} = ${ma.value}                                 輸出:  k1=v1  k2=v2   
                 </c:forEach> 
                 
   間隔符控制標簽------------- 
            
                    request.setAttribute("str","1,2,3,4,5");      
                    
                    <c:forTokens items="str" delims="," var="de">             
                        ${de}                                                  輸出 12345 
                    </c:forTokens>     
                    
   捕獲異常標簽  ---------- 
           
                   <c:catch var="info"> 
                       <% 
                         Integer.parseInt("sdfsdf");                 
                       %>        
                   </c:catch> 
                   
                   ${info}                                             輸出:異常信息 
                   
   導入頁面標簽 ----------- 
        
                   <c:import url="http://www.baidu.com" />            相當於include 
                   
   鏈接標簽    ------------ 
    
                   <c:url value="http://www.baidu.com" var="v"/> 
                       <c:param name="name" value="jack" /> 
                       <c:param name="age" value="20" /> 
                   </url>     
                   
                   ${v}              輸出        http://www.baidu.com?name=jack&age=20 
                   
    重定向標簽 ------------ 
        
                   <c:redirect context="/company" url="/index.jsp">   定位到名叫company的項目下的index.jsp頁面                                          
                 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM