• EL表达式中引用隐式变量


    除了在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

  • 相关阅读:
    win7 计划任务
    计算机英语翻译
    开机自启动win7计划任务
    vc++ 创建异性窗体(1)
    C++ TaskScheduler msdn杂志
    vc++创建异性窗体(2)
    Task Scheduler 参看——有关闭电源设置和添加目录设置参考
    CComPtr用法
    Builtin\administrators 与 Domain Admins 用户组的来历与区别
    CreatDC()和CreateIC()
  • 原文地址:https://www.cnblogs.com/daxiong225/p/4779058.html
Copyright © 2020-2023  润新知