美文网首页
EL表达式的内置对象

EL表达式的内置对象

作者: 让你变好的过程从来都不会很舒服 | 来源:发表于2021-10-11 08:52 被阅读0次

    和JSP一样、EL表达式也存在一些内置对象,共11个:

    • pageContext
    • pageScope
    • requestScope
    • sessionScope
    • applicationScope
    • cookie
    • param
    • paramValues
    • header
    • headerValues
    • initParam

    下面介绍一些比较常用的对象:

    pageContext

    EL表达式中的pageContext与JSP内置对象中的 pageContext 是同一个对象。通过该对象,可以获取
    到 request、response、session、servletContext、servletConfig 等对象。注意,这些对象在 EL中不是内置对象,只能通过EL中的pageContext 获取。
    在 EL 中直接

    `${pageContext.request}`
    

    即可获取 request 对象。其底层实际调用的是
    pageContext.getRequest()方法。同理,也可以通过类似方式获取到其它对象。
    在这些获取的对象中,有一个是实际工程中最常用的:

    ${pageContext.request.contextPath}  
    

    用于获取当前项目的发布到服务器的名称。一般会用在路径中,如果你熟悉web中的路径关系的话,就不建议使用这个了。

    <form action="${pageContext.request.contextPath }/login.do"></form>
    

    param

    在 EL 中通过${param.参数名}可获取到请求中指定参数名的值。例如,提交的请求为:
    localhost:8080/07-04-jsp/index.jsp?name=monkey1024
    在 JSP 页面中通过如下方式,可获取到 name 参数的值:

    ${param.name}
    

    paramValues

    若提交的请求中同一参数具有多个值,则可通过 ${paramValues.参数名[索引]} 获取到指定索引号的该参数值。例如,提交的请求为:
    localhost:8080/07-04-jsp/index.jsp?hobby=basketball&hobby=football
    在JSP中获取方式如下:

    ${paramValues.hobby[0]}
    ${paramValues.hobby[1]}
    

    initParam

    在 EL 中通过使用 ${initParam.初始化参数名} 可以获取到初始化参数的值。 例如在 web.xml 中定义了初始化参数如下:

     <context-param>
          <param-name>admin</param-name>
          <param-value>1024</param-value>
      </context-param>
    

    在JSP中的获取方式如下:

    ${initParam.admin}
    

    相关文章

      网友评论

          本文标题:EL表达式的内置对象

          本文链接:https://www.haomeiwen.com/subject/suyxkltx.html