java web -- EL表达式

EL 全名为Expression Language。

${EL标识符}

作用:

获取数据:

•EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象、获取数据。(某个web域 中的对象,访问javabean的属性、访问list集合、访问map集合、访问数组)

执行运算:

利用EL表达式可以在JSP页面中执行一些基本的关系运算逻辑运算算术运算,以在JSP页面中完成一些简单的逻辑运算。${user==null}

获取web开发常用对象

•EL 表达式定义了一些隐式对象,利用这些隐式对象,web开发人员可以很轻松获得对web常用对象的引用,从而获得这些对象中的数据。

调用Java方法

EL表达式允许用户开发自定义EL函数,以在JSP页面中通过EL表达式调用Java类的方法。

原理:

lEL表达式语句在执行时,会调用pageContext.findAttribute方法,用标识符为关键字,分别从pagerequestsessionapplication四个域中查找相应的对象,找到则返回相应对象,找不到则返回””注意,不是null,而是空字符串)。

 

使用:

获取数据:

${user.address.city}           --获取javabean中的属性(属性address为javabean )的属性

${user.list[0]}                   --访问有序集合某个位置的元素

${map.key}                       --获得map集合中指定key的值


执行运算:

EL表达式支持如下运算符:

image

image

${empty(list) }                             --empty()运算,检查对象是否为null或“空”

${user!=null?name : “”}             --二元表达式, (true|false):true?false

 

EL表达式中的11个隐含对象

隐含对象名称

描 述

pageContext 对应于 JSP页面 中的 pageContext对象 (注意:取的是pageContext对象。)
pageScope 代表 page域 中用于保存属性的 Map对象
requestScope 代表 request 域中用于保存属性的 Map对象
sessionScope 代表 session 域中用于保存属性的 Map对象
applicationScope 代表 application 域中用于保存属性的 Map对象
param 表示一个保存了所有请求参数的Map对象
paramValues

表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]

header 表示一个保存了所有http请求头字段Map对象
headerValues 同上,返回string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]
cookie 表示一个保存了所有cookie的Map对象
initParam 表示一个保存了所有web应用初始化参数的map对象

 

 

 

 

 

 

 

 

 

 

 

posted on 2011-06-13 20:04  黑暗伯爵  阅读(1756)  评论(0编辑  收藏  举报

导航