zoukankan      html  css  js  c++  java
  • JavaWeb:EL表达式

    说明

      1.Expression Language语言,一种用于JSP文件中的数据访问的语言。
      2.能够简化JSP文件中该数据访问的代码,可用来替代传统的基于<%= %>和部分<% %>的程序片段。
      3.EL表达式使得JSP文件的创建人员能够用更加简单的语法来访问数据。
      4.基本形式为: ${var}

    EL运算符 (来自孤傲苍狼)

      1、关系运算符  

      

      2、逻辑运算符:

      

      3、empty运算符:检查对象是否为null(空)

      4、二元表达式:${user!=null?user.name :""}

    关于隐含对象

      EL语言中定义了11个隐含对象,它们都是java.util.Map类型,网页制作者可以方便来快捷地访问Web应用中的特定数据。

       
    序号 隐含对象名称 描       述
    1 pageContext 对应于JSP页面中的pageContext对象(注意:取的是pageContext对象。)
    2 pageScope 代表page域中用于保存属性的Map对象
    3 requestScope 代表request域中用于保存属性的Map对象
    4 sessionScope 代表session域中用于保存属性的Map对象
    5 applicationScope 代表application域中用于保存属性的Map对象
    6 param 表示一个保存了所有请求参数的Map对象
    7 paramValues 表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]
    8 header 表示一个保存了所有http请求头字段的Map对象,注意:如果头里面有“-” ,例Accept-Encoding,则要header[“Accept-Encoding”]
    9 headerValues 表示一个保存了所有http请求头字段的Map对象,它对于某个请求参数,返回的是一个string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]
    10 cookie 表示一个保存了所有cookie的Map对象
    11 initParam 表示一个保存了所有web应用初始化参数的map对象


      说明
      这11个隐含对象可以分为4种类型:
      → 表示HTTP请求中的特定数据:
        ⇒ ${header["user-agent"] } <=⇒ <%=request.getHeader("user-agent")%>
        ⇒ ${header.host} <=⇒ <%=request.getHeader("host")%>
        ⇒ ${cookie.username.value}<=⇒ 调用名为username的Cookie对象的getValue()方法
        ⇒ ${param.username}<=⇒ <%=request.getParam("username")%>
      → 表示特定范围
        ⇒ ${sessionScope.cart.total}<=⇒ 等价与 调用会话范围内的属性名为 cart的ShoppingCart对象的getTotal()方法
        ⇒ ${applicationScope.counter.count} <=⇒ 等价与 调用Web范围内的属性名为counter的CounterBean对象的getCount()方法
      → 表示PageContext对象
        ⇒ ${pageContext.servletContext.serverInfo} <=⇒ 等价与 <%=application.getServerInfo()%>
        ⇒ ${pageContext.request.requestURL}<=⇒ 等价与 <%=request.getRequestURL()%>
        ⇒ ${pageContext.response.characterEncoding} <===>等价与 <%=response.getCharacterEncoding()%>
        ⇒ ${pageContext.session.creationTime} <===>等价与 <%=session.getCreationTime()%>
      → 表示Web应用的初始化参数集合
        ⇒ ${initParam.driver} <===>等价与 <%=application.getInitParamter("driver")%>

    说明:

      属性的访问中,可以用 . 或者[]来访问对象的属性及数组的元素,对于属性中有 - 或 空格 等特殊字符的只能用[]。

    命名变量

      说明:

        命名变量不是局部变量或者实例变量,它是存放在特定范围内的属性,命名变量的名字和属性名字对应。
        如果范围内不存在username属性,那么不会打印任何结果。
        

      创建

        命名变量的创建就是创建属性,如下:
        <%
          
    pageContext.setAttribute("username","fuck");
        %>

  • 相关阅读:
    [APM] OneAPM 云监控部署与试用体验
    Elastic Stack 安装
    xBIM 综合使用案例与 ASP.NET MVC 集成(一)
    JQuery DataTables Selected Row
    力导向图Demo
    WPF ViewModelLocator
    Syncfusion SfDataGrid 导出Excel
    HTML Table to Json
    .net core 2.0 虚拟目录下载 Android Apk 等文件
    在BootStrap的modal中使用Select2
  • 原文地址:https://www.cnblogs.com/twodog/p/12141046.html
Copyright © 2011-2022 走看看