Jsp中的EL表达式
程序员文章站
2022-04-07 17:50:40
...
JSP中的EL表达式
全称:expression language
主要作用:从作用域中取出变量并显示
在Servlet中:request.setAttribute(“变量名”,值);
在Jsp中:页面上可以使用 &{变量名.属性}
1.简单运算
<h3>算数运算 ${ 10 + 20}</h3> ====>30
<h3>比较运算 ${ 10 > 56}</h3> ====>false
<h3>逻辑运算 ${ 18 > 9 and 9 < 78}</h3> ====>false
<h3>逻辑运算 ${ 18 > 90 or 8 > 34}</h3> ====>false
<h3>逻辑运算 ${ not ( 45 < 8 ) }</h3> ====>true
<h3>三元运算 ${ (false)?"真真":"假假"}</h3> ====>假假
<h3>空运算 ${ empty names}</h3>
2.用来显示作用域中的变量
- list显示可以用[下标]
- 要显示大小 list.size()
- map显示 可以用 ${map.key} 键找值
- map显示 可以用 ${map[“key”]}
- map显示 可以用 ${map.get(“key”)}
- 建议map使用字符串作为key,如果非要用整数值作为key,必须用Long,而且只能用[语法取],不能用 . 语法
- 显示java bean,底层实际调用的是get方法,嵌套的对可以多次调用 . 语法
3.隐式对象
- param 代表是请求参数的map集合,用在一个参数有一个值的情况,key对应参数名,value对应参数值
- paramValues 代表是请求参数的map集合,用在一个参数有多个值的情况,key对应参数名,value对应参数值的数组
4.标准标签库
简称jst1
(1)引入标签库 jar包
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
(2)在页面上声明要使用的标签库
<%@ taglib prefix="标签前缀" uri="标签的唯一标识" %>
(3)核心标签
- forEach进行遍历
<c:forEach items="要遍历的集合" var="临时变量名" begin="起始的下标" end="结束的下标" varStatus="保存下标的对象">
</c:forEach>
其中 varStatus中有两个属性 count(从1开始),index(从0开始)
- if — 条件判断
<c: if test="条件">内容</c:if>
- choose — 条件判断
<c:choose>
<c:when test="条件1">内容</c:when>
<c:when test="条件2">内容</c:when>
<c:when test="条件3">内容</c:when>
<c:otherwise>内容</c:otherwise>
</c:choose>