JavaWeb——JSP 的 EL
其他
2020-02-08 18:30:15
阅读次数: 0
JavaWeb——JSP 的 EL
- EL,即 Expression Language,是 JSP2.0 中引入的新内容,用于简化在 JSP 开发中对象的引用,从而规范代码。
一、EL 基础
- EL 的功能之一就是便于将 Java 代码片段嵌入到 JSP 页面中。
1、EL 语法
2、EL 优点
- EL 具有语法简单、使用方便。
- EL 可以与 JSTL 和 JavaScript 配合使用。
- EL 和大多数编程语言一样。
3、禁用 EL
二、EL 关键字和运算符及其优先级
1、关键字
- 和大多数编程语言一样,EL 表达式也是有关键字的,其关键字如下表
and |
eq |
gt |
instanceof |
div |
or |
le |
false |
empty |
not |
lt |
ge |
2、运算符及其优先级
- EL 可以访问数据运算符、算术运算符、关系运算符、逻辑运算符、条件运算符和 empty 运算符,运算符的优先级如下:
- 同级运算符从左向右结合。
2、EL 使用数据
- EL 通过“[]”和“.”运算符可以对 Bean 的属性等数据进行访问;通常除了所访问的对象的属性名包含“- .”等特殊符号和数组只能用“[]”访问,其余情况这两者的功能是等价的。
2.1、获取数组
- 示例:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>EL表达式测试</title>
<style type="text/css">
body{
background: #d7c7e9;
align-items: center;
text-align: center;
}
</style>
</head>
<body>
<h2>1、数组元素获取</h2>
<%
String[] arr = {"秦国","楚国","韩国","齐国"};
request.setAttribute("book", arr);
%>
<%
String[] arr1 = (String[])request.getAttribute("book");
for(int i=0;i<arr1.length;i++){
request.setAttribute("requestl", i);
%>
${requestl}:${book[requestl]}<br>
<%}%>
</body>
</html>
- 效果:
2.2、获取集合
- 示例
<h2>2、List 元素获取</h2>
<%
List<String> list = new ArrayList<>();
list.add("广东省");
list.add("湖南省");
list.add("云南省");
list.add("北京市");
list.add("山东省");
list.add("山西省");
session.setAttribute("province", list);
%>
<%
List<String> list1 = (List<String>)session.getAttribute("province");
for(int i=0;i<list1.size();i++){
request.setAttribute("requestl", i);
%>
${requestl}:${province[requestl]}<br>
<%}%>
- 效果:
3、EL 算术运算
- 同 Java 语言一样, EL 表达式可以进行加减乘除等算术运算:
运算符 |
功能 |
例子 |
结果 |
+ |
加 |
${19+1} |
20 |
- |
减 |
${66-30} |
36 |
* |
乘 |
${52.1*10} |
521 |
/或div |
除 |
${5/2} |
2.5 |
%或mod |
求余 |
${17%3} |
2 |
4、EL 的 empty 运算符
5、EL 的 关系逻辑运算
- 示例如下:
<h2>4、关系逻辑运算</h2>
<%
request.setAttribute("userName","御承扬");
request.setAttribute("power", "test");
%>
userName=${userName}<br>
power=${power}<br>
\${userName!=""and(userName="ycy")}:
${userName!=""and(userName=="ycy")}<br>
\${userName=="御承扬"and(power=="test")}
${userName=="御承扬"and(power=="test")}
- 效果如下:
6、EL 的条件运算符
上一篇
下一篇
发布了146 篇原创文章 ·
获赞 15 ·
访问量 1万+
转载自blog.csdn.net/qq_42896653/article/details/103399835