EL表达式 总结

Posted on 2022-05-27 07:23  quantumLQ  阅读(61)  评论(0编辑  收藏  举报

EL表达式,全称是Expression Language。意为表达式语言。它是Servlet规范中的一部分,是JSP2.0规范加入的内容。其作用是用于在JSP页面中获取数据,从而让我们的JSP脱离java代码块和JSP表达式。

只能从四大域中获取数据,调用的就是findAttribute(name,value);方法,根据名称由小到大逐个域中查找,找到就返回,找不到就什么都不显示。

它可以获取对象,可以是对象中关联其他对象,可以是一个List集合,也可以是一个Map集合。

在使用EL表达式时,它帮我们做了一些处理,使我们在使用时可以避免一些错误。它没有空指针异常,没有数组下标越界,没有字符串拼接。

${strs[0]}+${strs[1]}

 

<p style="margin-top: 5px"> ${(sessionScope.user.nickName)?(sessionScope.user.nickName):"神秘的新用户"}</p>

 

获取数据

我们在请求域中存入了一个名称为message的数据(request.setAttribute("message","EL");),此时在jsp中获取的方式,如下表显示:

Java代码块JSP表达式EL表达式
<%<br/> <br/> String message = (String)request.getAttribute("message");<br/> out.write(message);<br/>%> <%=request.getAttribute("message")%> ${message}

非空判断

empty运算符:它会判断:对象是否为null,字符串是否为空字符串,集合中元素是否是0个

${empty str}============当对象为null返回true

三元运算

三元运算符 条件?真:假

<% request.setAttribute("gender", "female"); %> <input type="radio" name="gender" value="male" ${gender eq "male"?"checked":""} >男

Copyright © 2024 quantumLQ
Powered by .NET 9.0 on Kubernetes