继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

EL(表达式语言)

幕布斯6054654
关注TA
已关注
手记 1135
粉丝 218
获赞 1009

一、EL概述

EL(Expression Language)是一门表达式语言,它对应<%=…%>。我们知道在JSP中,表达式会被输出,所以EL表达式也会被输出。

1.EL的格式

${…}

2.EL运算符

webp

EL运算符


3.EL不显示null
当EL表达式的值为null时,会在页面上显示空白,即什么都不显示。

二、EL表达式读取四大域

  • ${xxx}
    全域查找名为xxx的属性
    如果不存在,输出空字符串,而不是null

  • ${pageScope.name}
    获取pageContext域属性

  • ${requestScope.name}
    获取request域属性

  • ${sessionScope.name}
    获取session域属性

  • ${applicationScope.name}
    获取ServletContext域属性

例如:
EL来访问JavaBean属性
Person.java

public class Person {
    private String name;    private int age;    private String sex;    public String getName() {        return name;
    }    public void setName(String name) {        this.name = name;
    }    public int getAge() {        return age;
    }    public void setAge(int age) {        this.age = age;
    }    public String getSex() {        return sex;
    }    public void setSex(String sex) {        this.sex = sex;
    }
}

webp

使用及结果

三、EL内置对象

EL一共11个内置对象,无需创建即可以使用。
pageScope,requestScope,sessionScope,applicationScope,param,paramValues,header,headerValues,initParam,cookie,pageContext
除了pageContext其余的都是Map类型

EL使用语法
${Map.key}

${map['key']}

  • 请求参数相关内置对象

    • param
      Map<String,String>类型
      param对象可以用来获取参数,与request.getParameter()方法相同。

    • paramValues
      paramValues是Map<String, String[]>类型,当一个参数名,对应多个参数值时可以使用它。

webp

param

webp

paramValues

  • 请求头相关内置对象

    • header
      Map<String,String>类型
      用来获取请求头
      例如:${header['User-Agent']}

    • headerValues
      headerValues是Map<String,String[]>类型。
      当一个请求头名称,对应多个值时,使用该对象



作者:乐乐亲么么哒
链接:https://www.jianshu.com/p/8919b4d51560

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP