目录
EL表达式
作用:在jsp页面输出数据(主要是输出域对象中的数据)
一、格式
格式:$(表达式)
EL表达式在输出null值时,输出的是空串,而jsp表达式脚本是输出null字符串
二、搜索域数据的数据
按照四个域从小到大的顺序进行搜索,找得到就输出
三、表达式输出复杂Bean对象
<body>
<%
Person person=new Person();
person.setName("国哥好帅");
person.setPhones(new String[]{"18610541354","18688886666","18699998888"});
List<String> cities=new ArrayList<String>();
cities.add("北京");
cities.add("上海");
cities.add("深圳");
person.setCities(cities);
Map<String ,Object> map=new HashMap<>();
map.put("key1","value1");
map.put("key2","value2");
map.put("key3","value3");
person.setMap(map);
pageContext.setAttribute("p",person);
%>
输出Person:${p}<br/>
输出Person的name属性:${p.name}<br/>
输出Person的phone数组属性:${p.phones[2]}<br/>
输出Person的cities集合中的元素值:${p.cities[2]}<br/>
输出Person的Map集合:${p.map.key1}<br/>
</body>
四、EL表达式中的运算
1、关系运算
2、逻辑运算
3、算术运算
4、empty运算
empty运算可以判断一个数据是否为空,如果为空则输出true,否则输出false
格式:${empty 名称}
以下几种情况为空:
4.1、值为null
4.2、值为空串
4.3、值为Object类型数组,长度为零
4.4、list集合,元素个数为零
4.5、map集合,元素个数为零
5、三元运算
6、点运算和中括号运算
点运算:可以输出Bean对象中某个属性的值
[ ]中括号运算:可以输出有序集合中某个元素的值,还可以输出map集合中key里含有特殊字符的key的值
<body>
<%
Map<String,String> map=new HashMap<String,String>();
map.put("a.a.a","aaaValue");
map.put("b+b+b","bbbValue");
map.put("c-c-c","cccValue");
request.setAttribute("f",map);
%>
${ f[&