EL表达式
EL:Expression Language 表达式语言
作用:主要代替jsp页面中的表达式脚本在jsp页面中进行数据输出.使得页面变的更加简洁。
格式:${表达式}
注意:表达式在输出null值,输出的是空串,jsp表达式脚本输出null值的时候,输出的 是‘null’字符串。
EL表达式搜索数据的顺序 ${key} ==输出value值
当四个域中都有相同的key的数据的时候,EL表达式会按照四个域从小到大的顺序去进行搜索。
EL输出Bean的普通属性、数组、List集合、Map
Person p =new Person();
输出Person: ${p}
输出Person的私有name属性: ${p.name}
输出Person的pons数组下标为1的值: ${p.phone[1]}
输出Person的cities List集合个别元素: ${p.cities[1]}
输出Person的Map集合 : ${p.map}
输出Person的Map集合的key的值 ${p.map.key1}
输出Person的int getAge()可以获得 ${p.age}
EL表达式---运算
关系运算 == != < > <= >= true or false
逻辑运算 && || ! true or false
算数运算 + - * / %
empty运算
empty运算可以判断一个数据是否为空,如果为空,则输出 true,不为空输出 false.
以下几种情况为空:
1、值为null值的时候,为空
2、值为空串的时候,为空
3、值是Object类型数组,长度为零的时候
4、list集合,元素个数为零
5、map集合,元素个数为零
三元运算 ${表达式? 表达式1 :表达式3}
"."点运算和 [ ] 中括号运算符
EL表达式的11个隐含对象
PageContext对象的使用
1.协议:2.服务器ip:3.服务器端口:4.获取工程路径:5.获取请求方法:6.获取客户端ip地址:7.获取会 话的id编号:
request
JSTL标签库
JSP Standard Tag Library
EL为了代替表达式脚本 JSTL为了代替代码脚本。
使用步骤
第一步: 导入相关的jar包 第二步: <%@ taglib prefix = "c" url="资源路径">
Core核心库的使用
【1】<c:set scope="域" var="key值" value="value值" />(很少使用)
set标签可以往域中保存数据
【2】<c:if test="EL判断条件"/>
【3】<c:choose> <c:when test="EL判断条件"> <c:otherwise>
【4】<c:forEach begin="开始索引" end="结束索引" var="循环的变量" />