码迷,mamicode.com
首页 > 其他好文 > 详细

EL表达式中引用隐式变量

时间:2015-09-02 18:34:10      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

除了在jsp中9大隐式变量(在前面文章也叫预定义变量)在转化成为servlet后_jspService中可以看到:

public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException {

final javax.servlet.jsp.PageContext pageContext;
javax.servlet.http.HttpSession session = null;
final javax.servlet.ServletContext application;
final javax.servlet.ServletConfig config;
javax.servlet.jsp.JspWriter out = null;
final java.lang.Object page = this;
javax.servlet.jsp.JspWriter _jspx_out = null;
javax.servlet.jsp.PageContext _jspx_page_context = null;

 

为了提升效率,在EL表达式中规范了以下隐式对象:

(1)pageContext
pageContext对象引用当前PageContext. PageContext. 类依次拥有request、response,session,out和servletContext属性(即getRequest,getResponse,getSession, getOut,getServletContext方法).例如,下面表达式输出当前的会话ID

${pageContext.session.id}

(2) param和paramValue
这些对象允许我们访问基本的请求参数位(param)或请求参数值的数组(paramValues).因此,下面的表达式输出custID请求参数的值(如果当前请求中不存在这个参数,则返回空字符串。${param.custID}

 

(3)header和headerValues
这些对象分别访问HTTP请求报头的主要值以及全部值。回顾下,如果点号后面的值不能作为合法的名称,则不能用点号记法。因此,要访问Accept报头, 我们可以使用${header.Accept},或者${header["Accept"]}

类似的对象还有cookie , initParam,pageScope,requestScope,sessionScope,applicationScope

EL表达式中引用隐式变量

标签:

原文地址:http://www.cnblogs.com/daxiong225/p/4779058.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!