- JSP中的EL 表达式
- 什么是 EL 表达式,EL 表达式的作用?
- EL 表达式搜索域数据的顺序
- EL 表达式输出 Bean 的普通属性,数组属性,List 集合属性,map 集合属性
- EL 表达式 –运算
- EL 表达式的 11 个隐含对象
JSP中的EL 表达式
什么是 EL 表达式,EL 表达式的作用?
EL 表达式的全称是:Expression Language。是表达式语言。
EL 表达式的什么作用:EL 表达式主要是代替 jsp 页面中的表达式脚本在 jsp 页面中进行数据的输出。
因为 EL 表达式在输出数据的时候,要比 jsp 的表达式脚本要简洁很多。
表达式脚本输出 key 的值是:
EL 表达式输出 key 的值是:${key}
EL 表达式的格式是:${表达式}
EL 表达式在输出 null 值的时候,输出的是空串。jsp 表达式脚本输出 null 值的时候,输出的是 null 字符串。
EL 表达式搜索域数据的顺序
EL 表达式主要是在 jsp 页面中输出数据。
主要是输出域对象中的数据。
当四个域中都有相同的 key 的数据的时候,EL 表达式会按照四个域的从小到大的顺序去进行搜索,找到就输出。
${ key }
注释掉pageContext:
四个域的大小:pageContext
按照从小到大的顺序进行搜索然后输出。
EL 表达式输出 Bean 的普通属性,数组属性,List 集合属性,map 集合属性
例:输出 Person 类中普通属性,数组属性。list 集合属性和 map 集合属性。
Person 类:
public class Person {
// Person 类中普通属性,数组属性。 list 集合属性和 map 集合属性。
private String name;
private String[] phones;
private List cities;
private Map map;
public Person() {
}
public int getAge() {
return 21;
}
public void setName(String name) {
this.name = name;
}
public void setPhones(String[] phones) {
this.phones = phones;
}
public void setCities(List cities) {
this.cities = cities;
}
public String getName() {
return name;
}
public String[] getPhones() {
return phones;
}
public List getCities() {
return cities;
}
public Map getMap() {
return map;
}
public void setMap(Map map) {
this.map = map;
}
public Person(String name, String[] phones, List cities, Map map) {
this.name = name;
this.phones = phones;
this.cities = cities;
this.map = map;
}
}
jsp输出代码:
cities = new ArrayList();
cities.add(" 大连");
cities.add(" 沈阳");
cities.add(" 北京");
person.setCities(cities);
Map map = new HashMap<>();
map.put("key1","value1");
map.put("key2","value2");
map.put("key3","value3");
person.setMap(map);
pageContext.setAttribute("p", person);
%>
输出 Person:${ p }
输出 Person 的 name 属性:${p.name}
输出 Person 的 phones 数组属性值:${p.phones[2]}
输出 Person 的 cities 集合中的元素值:${p.cities}
输出 Person 的 List 集合中个别元素值:${p.cities[2]}
输出 Person 的 Map 集合: ${p.map}
输出 Person 的 Map 集合中某个 key 的值: ${p.map.key3}
输出 Person 的 age 属性:${p.age}
结果:
EL 表达式 –运算
语法:${ 运算表达式 } , EL 表达式支持如下运算符:
关系运算
关系运算符 说明 范 例 结果 == 或 eq 等于 ${ 5 == 5 } 或 ${ 5 eq 5 } true != 或 ne 不等于 ${ 5 !=5 } 或 ${ 5 ne 5 } false < 或 lt 小于 ${ 3 < 5 } 或 ${ 3 lt 5 } true > 或 gt 大于 ${ 2 > 10 } 或 ${ 2 gt 10 } false
逻辑运算
逻辑运算符 说 明 范 例 结果 && 或 and 与运算 ${ 12 == 12 && 12 < 11 } 或 ${ 12 == 12 and 12 < 11 } false || 或or 或运算 ${12 == 12 || 12
Original: https://www.cnblogs.com/kohler21/p/16632827.html
Author: 愚生浅末
Title: JSP中的EL 表达式
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/599160/
转载文章受原作者版权保护。转载请注明原作者出处!