概念
EL:Expression Language 表达式语言
作用
替换和简化jsp页面中的Java代码的编写
语法
${表达式}
注意
jsp中默认支持el表达式的,如果要忽略el表达式
- 设置jsp中的page指令中的 : isELIgnored="true" 忽略当前页面的中的所有的el表达式
- ${表达式} : 在没有设置isELIgnored="true",对单个EL表达式忽略
用法
运算
运算符
- 算术运算符:+ - * / %
- 比较运算符:< > <= == >= !=
- 逻辑运算符:$$(and) ||(or) !(not)
空运算符:empty
- 功能:用于判断字符、集合、数组、对象是否为null并且长度是否为0
- ${empty list}:判断字符串、集合、数组对象是否为null或者长度为0
- ${not empty list}:判断字符串、集合、数组对象是否为null 并且长度大于0
获取值
注意事项
- el表达式只能从与对象中获取值
语法:
${域名称.键名称}:从指定域中获取指定键的值
域名称:
- pageScope -> pageContext
- requestScope -> request
- sessionScope -> session
- applicationScope ->application (ServletContext)
- 举例:在request域中存储了name = 张三
${requestScope.name} = 张三
<% request.setAttribute("name","张三"); request.setAttribute("age","23"); %>
<h3>el获取值</h3> ${requestScope.name} ${sessionScope.age}
打印输出:
el获取值
张三 23${键名}:表示依次从最小的域中查找是否有该键对应的值,知道找到为止。
${name}- 举例
<% request.setAttribute("name","李四") request.setAttribute("name","张三"); request.setAttribute("age","23"); %>
<h3>el获取值</h3> ${name} <!--这个name将输出为?-->
打印输出:
el获取值
李四获取对象、List集合、Map集合的值”
对象:${域名称.键名称.属性名}:
- 本质上会去调用对象的getter方法。
- List集合:${域名称.键名[索引]}:
Map集合:
- ${域名称.键名.key名}
- ${域名称.键名["key名"]}
隐式对象
- el表达式中有11个隐式对象
pageContext
获取jsp其他八个内置对象
- ${pageContext.request.contextPath}:动态获取虚拟目录
版权声明:文章转载请注明来源,如有侵权请联系删除!
不错不错