摘要:本文介绍了JSP的EL表达式,包括语法和隐式对象。
环境
Windows 10 企业版 LTSC 21H2
Java 1.8
Tomcat 8.5.50
1 简介
EL(Expression Language)是JSP内置的表达式语言,可以更加简单的访问存储在JavaBean中的数据。
EL表达式可以直接访问隐式对象和域对象,也可以调用JavaBean中的方法,还可以执行简单的运算和判断操作。
EL表达式仅仅用来访问数据,不可以执行复杂的逻辑操作,如果需要执行复杂的逻辑操作,可以使用JSTL标签库。
EL表达式可以代替JSP表达式<%= %>在页面中做输出操作。
2 语法
使用EL表达式:
1 | ${表达式} |
获取属性值:
1 | ${对象.属性名} |
执行方法:
1 | ${对象.方法名()} |
获取Map中的值:
1 | ${map['key']} |
获取List中的值:
1 | ${list[index]} |
EL表达式在搜索域对象时,会按照小到大的顺序搜索四个域,找到就输出。
3 隐式对象
EL表达式定义了可以直接访问的隐式对象:
- pageContext:可以通过这个对象获取JSP的隐式对象。
- pageScope:可以通过这个对象获取page域中的数据。
- requestScope:可以通过这个对象获取request域中的数据。
- sessionScope:可以通过这个对象获取session域中的数据。
- applicationScope:可以通过这个对象获取application域中的数据。
- param:可以通过这个对象获取请求参数中的数据,只能获取单个值。
- paramValues:可以通过这个对象获取请求参数中的数据,可以获取多个值。
- header:可以通过这个对象获取请求头中的数据,只能获取单个值。
- headerValues:可以通过这个对象获取请求头中的数据,可以获取多个值。
- initParam:可以通过这个对象获取初始化参数。
- cookie:可以通过这个对象获取Cookie对象。
条