首页 > 代码库 > EL表达式

EL表达式

EL表达式(Expression language)

用途:jsp页面中,将在jsp页面中显示的java代码使用el表达式代替,使其显得简洁

el表达式提供了方便存取变量的语法和自动转变类型两个好处

el表达式的使用使得产生无脚本的jsp页面(不是指的js,而是指的java代码块),我们可以使用

表达式格式:${....} .el表达式访问的是JavaBean里面的变量。

EL表达式的内置对象

(1)param = request.getParamete

(2)sessionScope = session.getAttribute("");

(3)requestScope 

(4)applicationScope

(5)pageScope

(6)pageContext

(7)paramValue = http://www.mamicode.com/getParamValues 例如:${paramValues.fruit[2]}取第三个元素

(8)header

(9)headerValues

(10)cookie = cookie.value

${sessionScope.user.sex}

el表达式提供了 . 和 [] 两种运算符来存储数据

${sessionScope.user.sex} = ${sessionScope.user["sex"]

.和[]也可以同时混合使用

${sessionScope.shoppingCart[0].price 返回结果为shoppingCart中第一项物品的价格

两者之间的差异

${sessionScope.user[data]}

此时,data是一个变量,假若data的值为"sex"时,则上述例子可写为${sessionScope.user.sex},假若 data的值为"username"时,则上述例子可写为${sessionScope.user.username},因此,如果要动态获取值时,就可以用上述方法来做,但是"."无法做到动态取值

el存取变量数据的方法很简单,例如:${username}他的意思表示去除某一范围内中名称为username的变量,因为我们没有指明他是哪一个范围内的username,所以默认会从page这个范围找,若找不到,依次是Request--Session -- application范围,加入中途找到了username,就直接回传,不再继续找下去,但是如果全部的范围都没有找到时,就会回传null,

自动转化类型

${param.count+20}将字符串类型自动转化成整形。