JavaWeb之EL表达式
1、提出问题在JSP页面上获取域对象中保存的数据和获取请求参数数据是非常常用的操作。
2、el简介1)EL全名为Expression Language,它可以在JSP页面上可以直接使用格式:${表达式内容 }例如:
3、2)EL表达式的功能获取请求参数并显示●当前请求参数没有获取到时返回空字符串,而不是null。这样做的好处是空字符串在网页上是没有任何显示的,不必特殊处理。读取4个域对象属性值●读取不到时返回空字符串而不是null。
4、el隐含对象el能获取域的值,到底能获取那些域的值,我们来探索一下。EL中有7个常用的对象可以直接使用
5、el隐含对象解析1)pageContext它是代表当前页面的PageContext对象,通过它的get方法可以得到jsp中的其它八大隐含对象
6、2)四稍僚敉视个域对象所对应的隐含对象:①Map<String, Object> pageScope——对应pageContext域 ${ pageScope . usernam髫潋啜缅e }②Map<String, Object> requestScope——对应request域 ${ requestScope. username }③Map<String, Object> sessionScope——对应session域 ${ sessionScope. username }④Map<String, Object> applicationScope——对应application域 ${ applicationScope. username }
7、3)请求耩撞苏粪参数数据 paramMap<String, String> param:保存的是请求参数的key--value(value只有一个),input 改怊眶峋${ param. username }Map<String, String[]> paramValues:保存的是请求参数的key--value(value有多个),checkbox ${ paramValues. username }
8、5. el取值方式1)使用“点”如果对象是map类型对象: map.keyName -->得到对应的value值实质: map.get(keyName)如果对象是一般对象 : object.propertyName ---> 得到对就的属性值实质是: object.getXxx()
9、2)使用“[]”map的键有时包含“点”,这时就不能再使用“点”取值了。例如:
10、el表达式运算1) 算术运算:${5+3}2) 关系运算: ${5>3}3) 逻辑运算: ${true&a罪焐芡拂mp;&false}4) empty运算:${empty requestScope.emp }①null[1]变量的值是null[2]域对象中不存在这个变量②空集合③空数组④ 空字符串⑤ 空字符5)三目条件运算: ${16<5?'a':"big" }
11、获取项目虚拟路径1)获取request对象${pageContext.request }2)获取contextPath${pageContext.request.contextPath }