码迷,mamicode.com
首页 > 编程语言 > 详细

JavaWeb 之 EL表达式

时间:2019-10-05 12:51:47      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:比较运算符   逻辑运算符   ISE   bean   att   get   虚拟   ignore   作用   

EL 表达式

一、概述

  1、概念

    EL 表达式:Expression Language 表达式语言。

  2、作用

    替换和简化 jsp 页面中 java 代码的编写。

  3、语法格式

${表达式}

  4、注意事项

    jsp 默认是支持 el 表达式的。

    如果要忽略 el 表达式,有两种方式

     (1)设置 jsp 中 page 指令中:isELIgnored="true" 忽略当前jsp页面中所有的el表达式

     (2)\${表达式}:这种方式忽略当前这个 el 表达式,会在当前页面呈现原有格式。

二、运算符

  1、算数运算符

+、-、*、/(div)、%(mod)

    注意:其中的除号可以用 div 来代替,取余可以用 mod 来代替。

  2、比较运算符

 >  <  >=  <=  ==  !=

  3、逻辑运算符

&&(and)  ||(or)  !(not)

  4、空运算符

    空运算符:empty

    功能:用于判断字符串、集合、数组对象是否为null或者长度是否为0

    Demo:

${empty list}:判断字符串、集合、数组对象是否为null或者长度为0,为空或为0返回 true,不然返回 false
${not empty str}:表示判断字符串、集合、数组对象是否不为null 并且 长度>0;不为空或长度不为0返回 true,不然返回 false

  

三、获取值

  1、el 表达式只能从域对象中获取值

  2、语法

    (1)${域名称.键名}:从指定域中获取指定键的值

域名称 作用域
pageScope pageContext
requestScope request
sessionScope session
applicationScope application(ServletContext)

       Demo:

1 // 在 request  域中存储了 name=小明
2   request.setAttribute("name","小明");
3 // 从request 域根据键获取值
4   ${requestScope.name}

    注意:如果在域中没有对应的键值对,会返回空字符串""

    (2)${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到位置

pageContext < request < session < application

    (3)获取对象、List 集合、Map 集合的值

       1. 获取对象

          语法格式

${域名称.键名.属性名}    // 根据键名来获取存储的对象,然后去调用对象的 getter 方法。

          注意:这里的属性名是指JavaBean里面的 setter 和 getter 方法去掉 set或get,然后首字母变小写就是属性了。

       2. 获取 List 集合元素

          语法格式

${域名称.键名[索引]}    // 根据键名来获取 list 集合,然后用下标来访问集合中的元素

          注意:如果发生了下标越界,并不会报错,而是显示为空字符串。

          3. 获取 Map 集合元素

          语法格式

 ${域名称.键名.key名称}
 ${域名称.键名["key名称"]}

 

四、EL 隐式对象

  (1)el 表达式中有 11 个隐式对象

  (2)常用的 pageContext:可以获取 jsp 其他的八个内置对象。

     常用的方法:

${pageContext.request.contextPath}:动态获取虚拟目录

  

JavaWeb 之 EL表达式

标签:比较运算符   逻辑运算符   ISE   bean   att   get   虚拟   ignore   作用   

原文地址:https://www.cnblogs.com/niujifei/p/11624080.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!