運算式語言的特點:
*可獲得的名稱空間(PageContext屬性)
*嵌套的屬性,可以訪問集合對象
*可以執行關係的、邏輯的和算術的運算
*擴充函數可以和Java類的靜態方法映射
*它可以訪問JSP的一系列的隱含對象(request、session、application、page等)
輸出${字元:
${'${'}true;
<%@ page isELIgnored="true|false"%>
PageContext.findAttribute(String name)來尋找運算式對應的變數
運算式語言定義了一些隱含對象
*pageContext
*param
*paramValues
*header
*headerValues
*cookie
*initParam
*pageScope
*requestScope
*sessionScope
*applicationScope
${departments[deptName] }Map中的deptName的屬性值
定義的函數必須是靜態static
tld格式:
<function>
<name>add</name>
<function-class>com.yao.Function</function-class>
<function-signature>int add(int, int)</function-signature>
</function>
<function>
<name>trans</name>
<function-class>com.yao.Function</function-class>
<function-signature>java.lang.String trans(java.lang.String)</function-signature>
</function>
web.xml格式(“/”相對於WebRoot):
<jsp-config>
<taglib>
<taglib-uri>http://yao.com/jsp/function</taglib-uri>
<taglib-location>/functions.tld</taglib-location>
</taglib>
</jsp-config>
jsp頁面調用:
${myfun:trans(param.name)};
${myfun:add(param["x"],param["y"])};
重中之重:${對象}
<hr>一種使用獲得參數的方法:<br>
姓名:${user.userName}<br>
密碼:${user.password}<br>
年齡:${user.age}<br>
<hr>
<hr>另一種使用獲得參數的方法:<br>
姓名:${param.userName}<br>
密碼:${param.password}<br>
年齡:${param.age}<br>
<hr>又一種使用獲得參數的方法:<br>
姓名:${param['userName']}<br>
密碼:${param['password']}<br>
年齡:${param['age']}<br>
<hr>再一種使用獲得參數的方法:<br>
姓名:${param["userName"]}<br>
密碼:${param["password"]}<br>
年齡:${param["age"]}<br>
<hr>最後一種使用獲得參數的方法:<br>
姓名:${requestScope.user.userName}<br>
密碼:${requestScope.user.password}<br>
年齡:${requestScope.user.age}<br>
--------------------------------------------------------------------------------
一種使用獲得參數的方法:
姓名:12
密碼:12
年齡:101
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
另一種使用獲得參數的方法:
姓名:12
密碼:12
年齡:1
--------------------------------------------------------------------------------
又一種使用獲得參數的方法:
姓名:12
密碼:12
年齡:1
--------------------------------------------------------------------------------
再一種使用獲得參數的方法:
姓名:12
密碼:12
年齡:1
--------------------------------------------------------------------------------
最後一種使用獲得參數的方法:
姓名:12
密碼:12
年齡:201