EL表达式

1.EL表达式的作用

  让jsp书写起来更加的方便,简化在jsp中获取作用域或者请求数据的写法。也会搭配jstl进行使用

2.EL表达式的使用

  • 使用EL表达式获取请求数据
  • 使用EL表达式获取作用域数据

    作用:获取作用域对象中的数据

    注意:获取的是PageContext、request、session、application四个对象中的数据,找到了则获取返回,找不到什么都不做不报错

    语法:${表达式}

      表达式:

        获取请求数据

          request对象存储了请求数据--->param.键名 返回值

          request对象存储了请求数据--->paramvalues.键名 返回的是数组

        通过setAttribute方法存储到作用域对象中的数据

          ${键名} 返回键名所对应的值

          注意:

            如果存储的是普通字符串则直接返回

            如果存储的是对象,则返回的是对象

              普通对象

                ${键名.属性名.属性名...}

              集合对象

                list集合--->${键名[角标]}

                map集合--->${键名.map集合存储的键名...}

    作用域查找顺序

      默认查找顺序

        pageContext-->request-->session-->application

        注意:

          每次查找都是从小到大进行查找,找到了则获取,不再继续查找

      自定义查找

        ${pageScope.键名}---${requestScope.键名}---${sessionScope.键名}---${applicationScope.键名}

  • 使用EL表达式进行运算

    语法:

      ${逻辑表达式}:&& || !

      ${算术表达式}:+ - * /

      ${关系表达式}:> < >= <= == != %

      特殊:三目运算符

      ex:${1+2}--${1*2}--${4/2}--${4-2}--${4%3}--${4==4}--${4>2}--${sex==1?'男':'女'}

    注意:

      +加法表达式不表示字符连接,使用EL表达式进行字符连接会报错

  • 使用EL表达式空值判断

    语法:${empty 键名}

    作用:判断键名对象的值是否存有数据

  • 使用EL获取请求头数据和Cookie数据

    请求头数据

      ${header}-->返回所有的请求头数据

      ${header["键名"]}-->返回指定的键名的请求头数据

      ${headerValues["键名"]}-->返回指定的键名(同键不同值)的值的数组

    Cookie数据

      ${cookie}-->返回存储了所有cookie对象的map集合

      ${cookie.键名}-->返回指定的cookie对象

      ${cookie.键名.name}-->返回指定的cookie对象存储的数据的键名

      ${cookie.键名.value}-->返回指定的cookie对象存储的数据的值

原文地址:https://www.cnblogs.com/mxj961116/p/11172358.html