JavaEE之EL表达式($ 符号除了钱还有什么用?)

Posted Java联盟

tags:

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

温馨提示:本文阅读需要4分钟,建议收藏后阅读!


好的各位宝宝们

今天分享的就是

EL表达式


JSP 表达式语言EL(Expression Language)的功能是替代 JSP 页面中的复杂代码,它既容易访问 EL 隐含对象,也容易访问 JavaBean 的属性。JSP EL 既可以用来创建算术表达式也可以用来创建逻辑表达式。在 JSP EL 表达式内可以使用整型数、浮点数、字符串、常量 true、false 以及 null。

 

EL剖析

EL表达式总是以“${”开始,以“}”结束,例如:

${EL exprission}

${left.right} 或 ${left["right"]}


其中,left 可以是 EL 隐含对象,也可以是 page、request、session 和 application 四种范围中任意一个范围的属性,可以是数组或列表(List)。right 可以是 Map 对象的 key 或 Bean 对象的属性等。


EL的11种隐含对象

JavaEE之EL表达式($ 符号除了钱还有什么用?)

 

JavaEE之EL表达式($ 符号除了钱还有什么用?)

这些知识点看的我也一脸懵逼!

我们来做一下练习吧!

先来创建一个 OperatorServlet


JavaEE之EL表达式($ 符号除了钱还有什么用?)

 这里面有personBean、map、数组、列表!


JavaEE之EL表达式($ 符号除了钱还有什么用?)


 现在我们来写一个jsp页面利用EL表达式来获取这些数据!


JavaEE之EL表达式($ 符号除了钱还有什么用?)


页面效果:


JavaEE之EL表达式($ 符号除了钱还有什么用?)


使用点(.)操作符,则左边的变量只能是 EL 隐含对象或范围属性,也就是只能是java.uil.Map 对象或 Bean 对象。


如果左边变量是 Bean 对象,右边只能是 JavaBean 的属性。例:${bean.name} 的左边是 JavaBean,右边是 JavaBean 的属性,该表达式实质是调用 bean 对象的 getName() 方法。


JavaEE之EL表达式($ 符号除了钱还有什么用?)


页面效果:


JavaEE之EL表达式($ 符号除了钱还有什么用?)


点操作符要求 EL 左边的变量是 EL 隐含对象或范围属性,相比之下,[] 操作符更为强大和灵活。能使用点操作符的地方,肯定可以使用 [] 操作符,但能使用[] 操作符的地方却不一定能使用点操作符。


看一下数组

JavaEE之EL表达式($ 符号除了钱还有什么用?)


这边就不可以用点(.)操作符了,用点操作符,程序会报错。就是上面说的能使用[] 操作符的地方却不一定能使用点操作符。


JavaEE之EL表达式($ 符号除了钱还有什么用?)


来一点复杂的组合:


JavaEE之EL表达式($ 符号除了钱还有什么用?)


JavaEE之EL表达式($ 符号除了钱还有什么用?)


解释一下这个结果:

1)看来这边用点操作符是获取不到数据的!

2)num【0】的值是:0

     its【0】的值是:Java

     maps【“Java”】的值是:后台



我们还可以读取参数

写一个XML


JavaEE之EL表达式($ 符号除了钱还有什么用?)


jsp代码


JavaEE之EL表达式($ 符号除了钱还有什么用?)


JavaEE之EL表达式($ 符号除了钱还有什么用?)


EL运算符


如果需要在EL中进行数值计算或逻辑运算,可以使用EL运算符。但是请记住,JSP只是用于显示响应的视图,而不是完成很大运算量的工作。


1)EL算述运算符

 JavaEE之EL表达式($ 符号除了钱还有什么用?)  


jsp页面代码


JavaEE之EL表达式($ 符号除了钱还有什么用?)


这里的 \ $ 是转义字符,就可以把$符号输出到页面上


JavaEE之EL表达式($ 符号除了钱还有什么用?)

最下面的是三目运算,伙伴们还记得吗?


2) EL逻辑运算符


 JavaEE之EL表达式($ 符号除了钱还有什么用?)


jsp页面代码


 JavaEE之EL表达式($ 符号除了钱还有什么用?)


页面效果

JavaEE之EL表达式($ 符号除了钱还有什么用?)


3)EL关系运算符


 JavaEE之EL表达式($ 符号除了钱还有什么用?)


jsp页面代码


JavaEE之EL表达式($ 符号除了钱还有什么用?)


页面效果:


JavaEE之EL表达式($ 符号除了钱还有什么用?)


最后还有一个 empty 运算

就是判断是否为空


JavaEE之EL表达式($ 符号除了钱还有什么用?)


JavaEE之EL表达式($ 符号除了钱还有什么用?)

这个person.name是有值的所以输出false


我们的 EL 表达式就分享到这了

再见了

么么哒!


JavaEE之EL表达式($ 符号除了钱还有什么用?)



有任何问题都可以在文章留言,娜姐都看着的呢!

合作,投稿,转载,版权问题请联系 李娜:Lina_Java



以上是关于JavaEE之EL表达式($ 符号除了钱还有什么用?)的主要内容,如果未能解决你的问题,请参考以下文章

EL表达式 与 JSTL标准标签库

JSP编程专题2之JSP核心二(EL表达式,EL运算符以及除了和四个域属性空间相关的EL内置对象)

JavaEE实战——jsp入门El表达式JSTL标签库

JavaEE实战——jsp入门El表达式JSTL标签库

[javaEE] EL表达式获取数据

JavaWeb——EL技术,JSTL技术,JavaEE开发模式