JavaWeb學習之EL表達式

EL表達式:是爲了簡化jsp文件中編寫Java代碼數組

* 格式:${表達式 }cookie

* EL表達式的使用session

###一、 取出4個做用域中存放的值app

<body>
    <% pageContext.setAttribute("name", "page"); request.setAttribute("name", "request"); session.setAttribute("name", "session"); application.setAttribute("name", "application"); %> 按普通手段取值 <br>

    <%= pageContext.getAttribute("name")%><br />
    <%= request.getAttribute("name")%><br />
    <%= session.getAttribute("name")%><br />
    <%= application.getAttribute("name")%><br />

    <br>使用EL表達式取出做用域中的值    <br> ${ pageScope.name } <br /> ${ requestScope.name } <br /> ${ sessionScope.name }<br /> ${ applicationScope.name }<br />
</body>

結果:jsp

 

 ###二、 若是域中所存的是數組、集合、Map集合spa

<body>
    <br>-------------數組數據---------------- <br>
    <%
        String[] a = { "aa", "bb", "cc", "dd" }; pageContext.setAttribute("array", a); %> 使用EL表達式取出做用域中數組的值 <br> ${array[0] } , ${array[1] },${array[2] },${array[3] } <br>

    <br>-------------集合數據---------------- <br>
    <% List list = new ArrayList(); list.add("li1"); list.add("li2"); list.add("li3"); list.add("li4"); list.add("li5"); pageContext.setAttribute("li", list); %> 使用EL表達式取出做用域中集合的值 <br> ${li[0] } , ${li[1] },${li[2] },${li[3] } <br>-------------Map數據---------------- <br>
    <% Map map = new HashMap(); map.put("name", "zhangsna"); map.put("age", 18); map.put("address", "北京.."); map.put("address.aa", "深圳.."); pageContext.setAttribute("map", map); %> 使用EL表達式取出做用域中Map的值 <br> ${map.name } , ${map.age } , ${map.address } , ${map["address.aa"] } </body>

結果:code

  

 

 ###EL取值細節  對象

<body>
    <% pageContext.setAttribute("name", "page"); request.setAttribute("name", "request"); session.setAttribute("name", "session"); application.setAttribute("name", "application"); %> 使用EL表達式取出做用域中的值 <br>查找順序:pageScope => requestScope => sessionScope =>applicationScope <br> ${ name } </body>

結果:blog

  

##EL表達式 的11個內置對象作用域

  - pageContext:ServletContext(一個工程只有一個上下文對象)
  做用域相關對象
    - pageScope:page做用域
    - requestScope:request做用域
    - sessionScope:session做用域
    - applicationScope:整個應用程序做用域
  頭信息相關對象
    - header
    - headerValues
  參數信息相關對象
    - param
<%=request.getParameter("address") %> 等同於 ${param.address}

    - paramValues

    - cookie
  全局初始化參數
    - initParam
###EL應用補充(運算)
<body>
    <% pageContext.setAttribute("a", 1); pageContext.setAttribute("b", 2); pageContext.setAttribute("c", true); pageContext.setAttribute("d", false); %> ${ a > b } ${ a - b } ${ c && d } ${ a > b ? a: b} </body>
相關文章
相關標籤/搜索