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

                 EL表达式可以从域中获取属性。
                 1.使用 ${属性名}
                               如果只填写一个属性名,EL表达式会自动做全域查找。
                     (所谓的全域查找,就是按照page request session  application四个域范围内分别,找到就返回属性,如果没找到什么都不返还。 )
                 eg:

        <%pageContext.setAttribute("key","keyvalue");%>

        ${key}

        在page request session  application四个域范围内从小到大查找,直到找到key属性

                 输出:keyvalue

        2. 我们还可以指定去哪个域查找
                    pageScope
                    requestScope
                    sessionScope
                    applicationScope

        eg:${pageScope.key}

        在page域中找到key属性并输出

          注意:EL表达式只能获取域中的属性
                            EL表达式不能直接调用对象的方法

                    通过EL表达式读取对象的属性时,只需要${对象.属性名}
                    EL表达式会自动调用对象的对应的getter方法,通过将属性名首字母大写,然后加上一个get
                    
                    注意:只要有属性,就可以一直点下去,也就说对象的属性是对象的话,我们也可以通过对象的属性的属性的方式调用!
                    
                - 当读取一些名字比较特殊的属性时,这种特殊值必须要指定域,例如属性名带-:
                    ${requestScope['属性名']}

        3.EL内置对象

          3.1常用对象:

          -pageContext
                        类型 PageContext
                            它和JSP中pageContext是一个东西
                        作用 可以获取到JSP中其他的隐含对象
                        
                        例如:可以获取项目名:
                            ${pageContext.request.contextPath }
                    
                    
                    - pageScope
                        类型:Map<String,Object>
                        代表:page域中的属性
                        作用:可以获取到page域中的属性
                        
                    - requestScope
                        类型:Map<String,Object>
                        代表:request域中的属性
                        作用:可以获取到request域中的属性
                        
                    - sessionScope
                        类型:Map<String,Object>
                        代表:session域中的属性
                        作用:可以获取到session域中的属性
                    
                    - applicatScope
                        类型:Map<String,Object>
                        代表:application域中的属性
                        作用:可以获取到application域中的属性
                        
                        
                    - param
                        类型: Map<String , String>
                        代表:用户发送的请求参数
                        作用:可以获取请求参数
                        用法: ${param.参数名}
                        
                    - paramValues
                        类型:Map<String , String[]>
                        代表:一个请求参数对应的多个值
                        用法: ${paramValues.参数名[索引]}
                        
                    - header
                        作用:可以获取到用户发送的请求头
                        类型:Map<String , String>
                        例如:获取用户的系统信息 ${header['User-Agent']}

         3.2应了解的对象:

         - headerValues
                        类型: Map<String , String[]>
                        作用:可以获取一个头的多个值
                
                      - initParam;
                        类型:Map<String , String>
                        作用:获取整个WEB应用的初始化参数
                
                      - cookie
                        类型:Map<String , Cookie>
                        作用:用来获取Cookie

        4EL运算

        在EL中可以直接使用运算符进行运算。

    运算符

    说明

    范例

    结果

    +

    ${17+5}

    22

    -

    ${17-5}

    12

    *

    ${17*5}

    85

    /div

    ${17/5}${17 div 5}

    3

    %mod

    取余

    ${17%5}${17 mod 5}

    2

    ==eq

    等于

    ${5==5}${5 eq 5}

    true

    !=ne

    不等于

    ${5!=5}${5 ne 5}

    false

    <lt

    小于

    ${3<5}${3 lt 5}

    true

    >gt

    大于

    ${3>5}${3 gt 5}

    false

    <=le

    小于等于

    ${3<=5}${3 le 5}

    true

    >=ge

    大于等于

    ${3>=5}${3 ge 5}

    false

    &&and

    并且

    ${true&&false}${true and false}

    false

    !not

    ${!true}${not true}

    false

    ||or

    或者

    ${true||false}${true or false}

    true

    empty

    是否为空

    ${empty “”},可以判断字符串、数据、集合的长度是否为0,为0返回trueempty还可以与not!一起使用。${not empty “”}

    true

     


  • 相关阅读:
    外键的三种形式
    MySQl创建用户和授权
    Django模板系统
    Django 简介
    jQuery
    JavaScript的BOM和DOM
    JS中的关键字和保留字
    Git 源码管理工具简单入门
    Git使用
    常见的三种SQL分页方式
  • 原文地址:https://www.cnblogs.com/TYDBLOG/p/7354338.html
Copyright © 2011-2022 走看看