EL表达式

Posted 拿红罗卜钓鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EL表达式相关的知识,希望对你有一定的参考价值。

el 表达式 expression language 表达式语言
专门用来输出内容的;
目的:为了使前端人员能够更加便利的开发页面;
jsp(html+java 代码 + 指令 ) 如果一个 jsp 中没有 Java 代码,纯 html ,前端人员可以直接开发;
jsp 中不允许出现 Java 代码; 将 Java 代码使用 el 表达式来进行代替;
el 表达式的基本语法: 代替 Java 向 页面中输出内容;
${ 表达式语句 }
表达式语句:变量名称 如: ${name }
1. 如果单独使用 el 表达式, ${name } 程序先去 pageContext 域中寻找变量名为 name 的值,如果
没有,则去 request 中寻找,再没有,则去 session 域中寻找,还没有,去 application 域中寻找;都没
有,则显示空字符;
2. el 表达式中 11 个隐藏对象
学习其中 6 个, 3 种,
2.1 域对象 pageScope 页面域对象 requestScope 请求域对象 sessionScope 会话
域对象 applicationScope 应用域对象
2.2 cookie 对象 使用 cookie. 对象名 ( name ).name/value
2.3 param 对象 请求参数对象 用来获取请求体的内容;
get 请求: http://localhost:8080/index.jsp?username=zs&password=123
将请求参数放在路径上,然后可以获取
post 请求: http://localhost:8080/index.jsp 参数保存在请求体中 和 get 的方
式一样 key=value&key1=value1
3.el 表达式的对象使用方式
JavaBean 写法:私有化属性,然后 set\\get 方法,有参无参构造、重写 toString() 方法
${requestScope.student.age1 }
相当于 Java 中的: ((Student)request.getAttribute("student")).getAge1();
${ student.age1 = 1} 代表 studnet.setAge1(1);
4.el 表达式的使用位置
4.1. 直接输出在页面; ${name } 在页面中展示内容
4.2. 当前标签的属性内容使用:
<form>
<input type="text" value="${requestScope.student.name }" />
</form>
5.el 表达式中的运算
1. 算术运算符: + - * / % 余 得到值
算术运算符: ${4+3 } ${4-3} ${4*3} ${4/3 } ${4%3 }
2. 比较元素符: > < >= <= (== eq) 等于 (!= ne) 不等于 empty ( ) not
empty( 非空 ) 得到比较结果 true/false
${4>3 } ${4<3 } ${4>=3 } ${4<=3 } ${4!=3 } ${4==3 } ${not empty
"" } ${4 eq 3 } ${4 ne 3}
3. 逻辑运算符:与 && and || or not ! 得到的是逻辑结果 true/false
逻辑运算符: ${4>3 && 4<3 } ${4>3 and 4<3 } ${4>3 || 4<3 } ${4>3 or
4<3 } ${!(4>3)}
4. 三元运算符: boolean 表达式 ?true 结果表达式 :false 的结果表达式 得到表达式内容
表达式:可以是字符串、数字等等,也可以是 el 表达式
三元运算符: ${ 4>3?requestScope.name :" 小于 " }

以上是关于EL表达式的主要内容,如果未能解决你的问题,请参考以下文章

jquery中使用el表达式的问题,求教

EL概述和EL运算符

EL表达式总结

JSTL和EL

EL表达式

jquery与EL表达式的$冲突