EL简介:
①EL是JSP内置的表达式语言,用以访问页面的上下文以及不同作用域中的对象 ,取得对象属性的值,或执行简单的运算或判断操作。EL在得到某个数据时,会自动进行数据类型的转换。
②EL表达式用于代替JSP表达式(<%= %>)在页面中做输出操作。
③EL表达式仅仅用来读取数据,而不能对数据进行修改。
④使用EL表达式输出数据时,如果有则输出数据,如果为null则什么也不输出。
EL基本使用:
EL表达式总是放在{}中,而且前边有一个$作为前缀。
${EL表达式}
获取域中的对象可以直接使用对象名,如获取域中名字为user的对象
${user}
获取对象的属性值可以直接通过“对象.属性名”
${user.name}
${user.age}
注意:这里的属性名是get和set方法对应的属性值,并不是对象中的变量名。
比如:如果获取name属性值,那么该对象中必定要存在一个getName()方法。
获取对象的属性也可以通过“对象[“属性名”]”
${user[“name”]}
${user[“age”]}
获取Map中属性时可以以直接通过属性的key
${map.key}
${map[key]}
在指定域中获取属性
在EL表达式中如果我们直接使用属性名如:${user},它将会在四个域中由小到大依次查找。顺序:pageScope、requestScope、sessionScope、applicationScope。
也可以指定从哪个域中获取:
${ pageScope .user}:当前页面
${requestScope.user}:当前请求
${sessionScope.user}:当前会话
${sessionScope.user}:当前应用
El隐含对象(11个)
pageContext(大哥)
与jsp中的pageContext一致,获取其他隐含对象。
域对象(4)
称呼 el对象 jsp对象
page域 pageScope pageContext
request域 requestScope request
session域 sessionScope session
application域 applicationScope application
其他
- param:相当于,request.getPrameter();
- paramValues:request.getParameterValues(“name”):获取同名的name值
- header:
- headerValues:
- initParam;
- cookie:获取cookie对象
El运算符
算术运算符
关系运算符
逻辑运算符
三元运算符
位运算符
empty运算符:
empty判断的空,有三种空:
- null
- “” (空字符串)
- ArrayList list = new ArrayList();
非空:
!empty
not empty