• EL表达式(Expression Language)


    EL简介

    •  ELJSP内置的表达式语言,用以访问页面的上下文以及不同作用域中的对象 ,取得对象属性的值,或执行简单的运算或判断操作。EL在得到某个数据时,会自动进行数据类型的转换。

    •  EL表达式用于代替JSP表达式(<%= %>)页面中输出操作。(到JSP2.0时,在我们的页面中不允许出现 JSP表达式和 脚本片段)
    •  EL表达式仅仅用来读取数据,而不能对数据进行修改。
    •  使用EL表达式输出数据时,如果有则输出数据,如null则什么也不输出。

    EL基本使用

    •  EL表达式总是放在{}中,而且前边有一个$作为前缀。
      •  ${EL表达式}
    • 获取的对象可以直接使用对象名,如获取域中名字为user的对象
      •  ${user}
    • 获取对象的属性值可以直接通过“对象.属性
      •  ${user.name}
      •  ${user.age}
      • 注意:这里的属性名是getset方法对应的属性值,并不是对象中的变量名。
        • 比如如果获取name属性值,那么对象中必定要存在一个getName()方法。
    • 获取对象的属性也可以通过“对象[属性名”]
      •  ${user[“name”]}
      •  ${user[“age”]}
    • 获取Map属性时可以以直接通过属性的key
      •  ${map.key}
      •  ${map[key]}
    • 指定域中获取属性
      • EL表达式中如果我直接使用属性名${user},它将会在四个域中由到大依次查找顺序pageScoperequestScopesessionScopeapplicationScope
      • 也可以指定从哪个域中获取:
      1.  ${ pageScope .user}当前页面
      2.  ${requestScope.user}当前请求
      3.  ${sessionScope.user}当前会话
      4.  ${sessionScope.user}当前应用

    EL隐含对象

    •  EL中包含11隐含对象,这些对象可以在EL表达式中直接使用

    pageContext

    •  pageContextJSP中的pageContext功能一样

    请求域

    •  请求域主要用于获取域对象中的属性,四个对象分别对应四个请求域。
    1.  pageScope
    2.  requestScope
    3.  sessionScope
    4.  applicationScope

    请求参数

    •  参数对象主要用于获取getpost请求中参数
      •  param
        •  获取指定的请求参数, ${param.username}
      •  paramValues
        •  获取请求参数数组,如:${paramValues.sport[1]}

    其他

    •  header
    •  headerValues
    •  initParam
    •  cookie

    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

  • 相关阅读:
    .csproj文件
    堆栈
    数据库操作(一)
    Math数学函数
    SSM框架下各个层的解释说明
    MyBatis DAO层传递参数到mapping.xml
    Spring MVC3在controller和视图之间传递参数的方法
    注册/登陆界面验证码的作用及代码实现
    input中name和id的区别
    <mvc:default-servlet-handler/>的作用
  • 原文地址:https://www.cnblogs.com/kangxingyue-210/p/7614783.html
Copyright © 2020-2023  润新知