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

JavaEE之EL表达式($ 符号除了钱还有什么用?)_第1张图片

温馨提示:本文阅读需要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表达式($ 符号除了钱还有什么用?)_第2张图片

 

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

我们来做一下练习吧!

先来创建一个 OperatorServlet


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第3张图片

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


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第4张图片


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



页面效果:


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第5张图片


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


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



页面效果:



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


看一下数组



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



来一点复杂的组合:


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第6张图片



解释一下这个结果:

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

2)num【0】的值是:0

     its【0】的值是:Java

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



我们还可以读取参数

写一个XML


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第7张图片


jsp代码





EL运算符


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


1)EL算述运算符

 JavaEE之EL表达式($ 符号除了钱还有什么用?)_第8张图片  


jsp页面代码


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第9张图片


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


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第10张图片

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


2) EL逻辑运算符


 JavaEE之EL表达式($ 符号除了钱还有什么用?)_第11张图片


jsp页面代码


 JavaEE之EL表达式($ 符号除了钱还有什么用?)_第12张图片


页面效果

JavaEE之EL表达式($ 符号除了钱还有什么用?)_第13张图片


3)EL关系运算符


 JavaEE之EL表达式($ 符号除了钱还有什么用?)_第14张图片


jsp页面代码


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第15张图片


页面效果:


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第16张图片


最后还有一个 empty 运算

就是判断是否为空


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第17张图片


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第18张图片

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


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

再见了

么么哒!





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

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


娜姐带你用 Eclipse 写一个 Servlet

【福利合集】JavaSE 高阶篇文章汇总

为什么有些 专业程序员 做出的软件 不被认可?

程序员就是这样聊天把女朋友聊没的。


JavaEE之EL表达式($ 符号除了钱还有什么用?)_第19张图片

你可能感兴趣的:(JavaEE之EL表达式($ 符号除了钱还有什么用?))