EL表达式简介

一、EL表达式简介
EL(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化。EL表达式是为了让jsp编写更简单
EL表达式是为了替换<%=%> 发明的,但是 他们两个有区别,EL表达式正能取web九大内置对
Web域:
Page/pageContext只是在当前页面有效
Request再一次请求中有效
Session 在一次会话中有效
Application 在整个服务器当中有效
Setattibute(存值) getAttribute(取值)
非web域:response,out,exception ,config
注意:当${key}取值的时候,如果是有很多相同的web域存了相同的key,那么它会从最小的范围开始查找,找到之后即可返回,不在往下继续查找!
二、EL表达式介绍
1、.和[]运算符
EL提供.和[]两种运算符来导航数据,下列两者的意思一样
使用:
a) 使用 EL 表达式获取请求数据
i.获取用户请求数据
${用户请求数据的键名}
注意:用户请求数据是类对象时 需要对象名.属性名来取值

ii.获取请求头数据

iii.获取 Cookie 数据
首先cookie是EL表达式的内置对象可以直接拿来使用

c o o k i e . n a m e 将 获 得 对 应 c o o k i e 的 对 象 , 比 如 我 们 用 j s p 将 一 段 c o o k i e 发 送 给 客 户 端 。 C o o k i e c o o k i e = n e w C o o k i e ( &quot; u s e r n a m e &quot; , &quot; U s e r n a m e i n c o o k i e &quot; ) ; r e s p o n s e . a d d C o o k i e ( c o o k i e ) ; 创 建 一 个 名 称 为 u s e r n a m e , 值 为 &quot; U s e r n a m e i n c o o k i e &quot; 的 C o o k i e 对 象 , 然 后 发 送 给 客 户 端 。 然 后 我 们 就 可 以 使 用 {cookie.name}将获得对应cookie的对象,比如我们用jsp将一段cookie发送给客户端。 Cookie cookie = new Cookie(&quot;username&quot;, &quot;Username in cookie&quot;); response.addCookie(cookie); 创建一个名称为username,值为&quot;Username in cookie&quot;的Cookie对象,然后发送给客户端。 然后我们就可以使用 cookie.namecookiejspcookieCookiecookie=newCookie("username","Usernameincookie");response.addCookie(cookie);username"Usernameincookie"Cookie使{cookie.username}获得这个cookie了 c o o k i e . u s e r n a m e . n a m e 获 得 c o o k i e 名 称 − − &quot; u s e r n a m e &quot; , {cookie.username.name}获得cookie名称--&quot;username&quot;, cookie.username.namecookie"username"{cookie.username.value}获得cookie值–“Username in cookie”。

b) 使用 EL 表达式获取作用域数据
i. 获取作用域数据
${健名} 直接显示对应的值
ii. 作用域查找顺序
从小到大 page——》request——》session——》Application
iv.获取指定作用域中的数据
${作用域名.健名}会直接显示对应的值
注意:session的作用域名是sessionScope
c) 使用 EL 表达式进行运算
i. 算术运算

  • 、 - 、 * 、 / (或 div )和 % (或 mod )
    例:
    ${12%2} 表达式代表对12求余结果为0
    ii. 关系运算
     关系运算符 == (或 eq )、 != (或 ne )、 < (或 lt )、 > (或 gt )、 <= (或 le )和 >= (或 ge)
    列:
    ${2==2} 返回 true
    iii. 逻辑运算
    逻辑运算符 && (或 and )、 || (或 or )和 ! (或 not )
    ${0&&1} 返回值为false

d) EL 表达式空值判断 empty
判断建中是否有值
有值返回true
没有返回 false
注意:使用El表达式时需要导入相应的架包、还要在jsp页面中的taglib标签中导入jstl核心库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值