EL表达式

1. EL表达式的基本形式为: 如果在jsp模板文件中使用EL表达式,那么表达式的值回直接输出到网页上。

例如:Java表达式:<%=request.getParameter("usernamae") %>
      --> ${param.username}   (form)
2.直接访问对象的属性:
	e.g. ${request.user.username}  <==>  ${request.user['username']}
3. EL运算符:
	算数运算符:
	    + - * /(不是整除)% 
	关系运算符:
	    == < >..
	逻辑运算符
	    ! || &&
	empty运算符
	    true :如果var为null,就返回TRUE
	条件运算符
	    a?b:c
  内置对象
1. EL 语言中定义了11个隐含对象,他们都是java.util.Map类型,
网页制作者通过他们便捷地访问web应用的特定数据。

隐含对象名	说明
application	web应用范围内的属性名和属性值进行映射
cookie		客户请求中的Cookie名和Cookie对象进行映射
header		请求头部的项目名和项目值进行映射,例如:
			${header.host} 等价于<%=request.getHeader("host") %>
headerValues	把Http请求头部的项目名和所有匹配你的项目值得数组进行映射,例如:
			[Ljava.lang.String;@20f38b9a 等价于<% request.getHeaders("accept-language") %>
initParam	把web应用的初始化参数名和参数值进行映射

pageScope	把页面范围内的属性名和属性值进行映射
param		把客户请求的参数名和参数值进行映射
paramValues	请求参数名对应参数数组

requestScope	请求返回内的属性名和属性值
sessionScope	回话的范围内的属性名和属性值的映射
2.分类:
(1)请求范围内的特定数据:header,headerValues,param,paramValues,cookie
	${header["user-agent"]} (必须使用[]访问,因为不符合变量命名规则)  <==> <%=requesst.getHeader("user-agent") %>
	${cookie.username.value}  <==> 调用名为username的Cookie对象的getValue()方法
与前端cookie的关系
(2)特定范围的属性值:pageScope,requestScope,sessionScope和applicationScope
	  属性
(3)pageContext,表示PageContext对象
	${pageContext.request.contentPath}
	${pageContext.servletContext.serverInfo}  <==> <%=application.getServerInfo %>
	${pageContext.request.requestURL}  <==> <%=request.getRequestURL() %>
	${pageContext.response.characterEncoding}  <==> <%= response.getCharacterEncoding() %>

(4)表示web应用的初始化参数集合,为initParam
	  <==> <%=appliction.getInitParameter("driver") %>分类:
(1)请求范围内的特定数据:header,headerValues,param,paramValues,cookie
	Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0 (必须使用[]访问,因为不符合变量命名规则)  <==> <%=requesst.getHeader("user-agent") %>
	  <==> 调用名为username的Cookie对象的getValue()方法
	
与前端cookie的关系
(2)特定范围的属性值:pageScope,requestScope,sessionScope和applicationScope
	  属性
 
 



原文地址:https://www.cnblogs.com/zhuxiang1633/p/7706391.html