EL表达式
- 格式:xls
- 大小:91.50 KB
- 文档页数:9
EL表达式
一、什么是EL表达式
EL 全名为Expression Language,该语言简单,使用方便 ,提供
1、语法格式: ${expression}
提供 . 和 [ ] 两种运算符号来存取数据。
如,简单属性:${sessionScope.user.name},带索引的属性
EL语法:${ sessionScope.user.name}
等价JSP语法:User user=(User)session.getAttribute(“user”);S
2、 . 和[ ]两种方法的使用差异
(1)当要存取的属性名称中包含一些特殊的字符,如. 和
用[ ]
${user[“My-Name”]}。
(2)当属性值作为一个变量来存取时必须用[ ]形式(此为动 <%pageContext.setAttribute("data","name"); %> ${sessionScope.user[data]}
二、EL主要作用:
1、获取数据:
(1) EL表达式主要用于替换JSP页面中的脚本表达式,从各
取数据。
(2)EL表达式也可以很轻松获取JavaBean的属性,或获取
据,例如: ${user.address.city}
${user.list[0]}:访问有序集合某个位置的元素
${map.key值} : 获得map集合中指定key的值
结合JSTL的foreach标签,使用EL表达式也可以很轻松迭
迭代数组 迭代collection类型集合 迭代
2、执行一些基本运算:
利用EL表达式可以在JSP页面中执行一些基本的关系运算、逻
完成一些简单的逻辑运算。
3、获取web开发常用对象
EL 表达式定义了一些隐式对象,利用这些隐式对象,web开发
引用,从而获得这些对象中的数据。
语法:${隐式对象名称} :获得对象的引用 EL表达式就是用表达式语言jsp的动作标签本身就属于jsp规范的一部在页面中使用表达的目的是从各种域中取强调一点,能够被el表达取值的对象事先
自动类型转换指的是可以所任意类型都转自动类型转换也包括在构造表达式时的类
person.name-1
person["name-1"]
,提供自动类型转换的功能。 的属性:${sessionScope.shoppingCart[0].price}
ser”);String name=user.getName();
如. 和 –等并非字母或数字的符号,就一定要
此为动态取值)
,从各种类型的web域中检索java对象、获
或获取数组、Collection、Map类型集合的数
轻松迭代各种类型的数组或集合,示例:
迭代map类型集合
运算、逻辑运算和算术运算,以在JSP页面中隐含对象名称
pageContext
pageScope
requestScopesessionScopeapplicationScopeparamparamValuesheaderheaderValuescookieinitParam开发人员可以很轻松获得对web常用对象的是用表达式语言所构成的在jsp页面中可以被解释执行的表达式签本身就属于jsp规范的一部分,EL表达式也一样是jsp规范的一部分。Struts框架加也提供了类似的表达式ognl表达式,如果用表达的目的是从各种域中取出相应的对象,再取出对象中的属性值,另外一方面,就是它也可以来构造常用的算术,关系,能够被el表达取值的对象事先一定要在某个域中存在,否则无法操作。
换指的是可以所任意类型都转换成字符串,因为取出的值多半都需要作为页面的输出。换也包括在构造表达式时的类型转换,字符串可以转换成数字
写起来很方便它解决了属性名中有特殊符号的问题描 述
对应于
JSP
页面中的pageContext对象(注意:取的是pageContext对象。)代表page域中用于保存属性的Map对象代表request域中用于保存属性的Map对象代表session域中用于保存属性的Map对象代表application域中用于保存属性的Map对象表示一个保存了所有请求参数的Map对象表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]表示一个保存了所有http请求头字段的Map对象同上,返回string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]表示一个保存了所有cookie的Map对象表示一个保存了所有web应用初始化参数的map对象达式ognl表达式,如果要使用它就使用struts框架。如果你只会使用EL表达式,这是没有问题的。以来构造常用的算术,关系,逻辑等表达式。