jsp elの使用規則

2838 ワード

jspでのELの式の形似
${firstThing.secondThing}

ここでfirstThingは、EL implicit objectまたはattributeであってもよい.
 
1.firstThingとsecondThingの間がdotである場合、firstThingはmapまたはbeanである必要があります.mapであればsecondThingは対応するkeyであり,beanであればsecondThingには対応するgetterとsetterがあるはずである.
 
2.[]dotに似ていますが、より強力で、配列やlistの場合に使用できます.
 
3.Elは、HTMLなどの純粋なテキストを表示します.
<div>
    <b> bold tag:</b><br/>
    ${pageBean.tag1}
<div>

${pageBean.tag 1}がtags makes things boldの場合!クライアントはラベルを表示しません.ここでは<を<,>に変更する必要があります.変換>
 
4.ELのimplicit objects
jspのimplicit objectsとは少し違います.
pageScope, requestScope, sessionScope, applicationScope are maps of the scope attributes. 1つのアプリケーションはnaming conflictを防止するためです.
 
param and paramValues are maps of request parameters.
次の例から、${param.name}は${paramValues.name[0]}と同じであることがわかる.{param.food}は最初の数値しか表示されません.
<div>
    <b> bold tag:</b><br/>
<form action=”TestBean.jsp”>
    Name: <input type=”text” name=”name”>
    ID#: <input type=”text” name=”empID”>
    First food: <input type=”text” name=”food”>
    Second food: <input type=”text” name=”food”>
    <input type=”submit”> 
</form>

Request param name is: ${param.name} <br>
Request param empID is: ${param.empID} <br>
Request param food is: ${param.food} <br>
First food request param: ${paramValues.food[0]} <br>
Second food request param: ${paramValues.food[1]} <br>
Request param name: ${paramValues.name[0]}  

 
ヘッダー,${header.host}は<%=request.getHeader("host") %>.
 
cookie
<% Cookie[] cookies = request.getCookies();
    for (int i = 0; i < cookies.length; i++) {
    if ((cookies[i].getName()).equals(“userName”)) {
        out.println(cookies[i].getValue());
    }
} %>

${ cookie.userName.value}
 
5.ELのオペレータ
論理的にはelはnullをfalseと見なし、算術的には0とみなす.
    Arithmetic (5)
    Addition: +
    Subtraction: -
    Multiplication: *
    Division: / and div
    Remainder: % and mod

    Logical (3)
    AND: && and and
    OR: || and or
    NOT: ! and not

    Relational (6)
    Equals: == and eq
    Not equals: != and ne
    Less than: < and lt
    Greater than: > and gt
    Less than or equal to: <= and le
    Greater than or equal to: >= and ge