1. 程式人生 > >EL表達式的內置對象(待梳理)

EL表達式的內置對象(待梳理)

list() 文件中 mva map對象 rest list 表示 config find()

EL共有11個內置對象:其中1-10是Map對象,11是PageContext對象
1.param:Map<String,String>類型,可以用來獲取參數,與request.getParameter()方法相同。
/rams?username=wubin,獲得username參數值
方式一:<% String username = request.getParameter("username") %>
方式二:${param.username} ==> param.get("username")

2.paramValues:Map<String, String[]>類型,同一參數名對應多個值(比如,checkbox)
/rams?interests=足球&interests=讀書
方式一:<% String username = request.getParameterNames("interests") %>
方式二:${paramValues.interests} ==> paramValues.get("interests")

3.header:Map<String,String>類型,用來獲取請求頭。

4.headerValues:Map<String,String[]>類型,同一個請求頭對應多值。

5.initParam:Map<String,String>類型,對應web.xml文件中的<context-param>參數。
${initParam.contextConfigLocation}

6.cookie:Map<String,Cookie>類型,key是Cookie的名字,而值是Cookie對象本身。

7.pageScope:Map<String,Object>類型,${pageScope.xxx}的功能相等與pageContext.getAttribute(“xxx”)。兩者的區別在於,前者在數據不存在時返回空字符串,而後者返回null。

8.requestScope:Map<String, Object>類型,裝載了request對象中的所有數據。

9.sessionScope:Map<String, Object>類型,裝載了session對象中的所有數據。
session.setAttribute===》attributes.put("user_session",user);
${sessionScope.user_session}===>attitudes.get("user_session")==>user
${sessionScope.user_session.username}==>user.getUsername()

10.applicationScope:Map<String, Object>類型,裝載了application對象中的所有數據。
當EL中給出的不是隱藏對象時,表示在四個域中查找數據。例如:${a},表示

  ①在${pageScope.a}中查找,如果找到就返回。

  ②在${requestScope}中查找,如果找到就返回。

  ③在${sessionScope}中查找,如果找到就返回。

 在${applicationScope}中查找,如果找到就返回,找不到就返回空字符串。

11.pageContext:PageContext類型,pageContext.getRequest,可以${pageContext.request}。

PageModel pageModel = service.find();
request.setAttribute("pageModel");

i.取出pageModel對象
${pageModel}==>pageModel對象
ii.取出pagesize屬性
${pageModel.pagesize}==>pageModel.getPagesize()
ii.取出響應的列表:list屬性
${pageModel.list}==>pageModel.getList()

EL表達式的內置對象(待梳理)