EL表达式

喜你入骨 提交于 2019-11-27 18:13:39

全域查找
1、EL是JSP内置的表达式语言!
jsp2.0开始,不让再使用java脚本,而是使用EL表达式和动态标签来替代java脚本!
EL替代的是<%=…%>,也就是说,EL只能做输出
2、EL表达式来读取四大域
${xxx},全域查找名为xxx的属性,如果不存在,输出空字符串,而不是null。
pageScpoe.xxx{pageScpoe.xxx}、{requestScpoe.xxx}、sessionScpoe.xxx{sessionScpoe.xxx}、{applicationScpoe.xxx},指定域获取属性

3、java导航
4、EL可以输出的东西都在11个内置对象中
EL不显示null,当EL表达式的值为null时,会在页面上显示空白,即什么都不显示

5、 EL表达式格式
操作List和数组:list[0]{list[0]}、{arr[0]};
操作bean的属性:person.name{person.name}、{person[‘name’]}、对应person.getName()方法;
操作Map的值:map.key{map.key}、{map[‘key’]}、对应map.get(key)

EL内置对象
EL有11个内置对象,无需创建即可使用。10个是Map类型的,最后一个是pagecontext对象
param和paramValues这两个内置对象是用来获取请求参数的
param --param:Map<String,String>类型,param对象可以用来获取参数,与request.getParameter()方法相同。
param:对应参数,它是一个map,其中key参数名,value是参数值,适用于单值的参数
paramValues --paramValues是Map<String,String[]>类型,当一个参数名,对应多个参数值时可以使用
param:对应参数,它是一个map,其中key参数名,value是多个参数值,适用于多值的参数
header --header:对应请求头,它是一个map,其中key头名称,value是单个头值,适用于单值请求头
headerValues --headerValues:对应请求头,它是一个map,其中key头名称,value是多个头值,适用于多值请求头
initParam --获取内的参数

xxx
XXX


yyy
YYY

cookie:Map<String,Cookie>类型,其中key是cookie的name,value是cookie对象。
${cookie.JSESSION.value}
pageContext:它是pageContext类型
<%-- 提交项目名 项目名改变可获取已改变的项目名 --%>
${pageContext.request.contextPath }


点击这里 <%-- 不可以用cookie这个对象把sessionid打过来 --%> ${pageContext.session.id }
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!