1.安装jstl
-导两个jar包
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>javax.servlet.jsp.jstl-api</artifactId>
<version>1.2.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/taglibs/standard -->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
-在jsp页面上导入
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
2.JSTL表达式操作分类:
Core | 表达式操作 | out set remove catch |
流程控制 | if choose when otherwise | |
迭代操作 | forEach forTokens | |
URL操作 | Import param url redirect |
一、表达式操作:
<c: out>
<c: out>主要用来显示数据的内容,特殊符号的转化
例如:
Hello!<c:out value="${username}">
属性:
名称 | 说明 | EL | 类型 | 必须 | 默认值 |
value | 需要显示出来的值 | YObject | Object | 是 | 无 |
default | 如果value的值为null,则显示default的值 | YObject | Object | 否 | 无 |
escapeXml | 是否转换特殊字符,如<转化为<; | Yboolean | boolean | 否 | true |
<c: set>
<c: set>主要用来将变量储存至JSP范围中或是JavaBean的属性中。
使用情况:
1.为域对象中的一个属性赋值
2.为域对象中javabean对象的一个属性赋值
例子:
<c: set value="subject" value="${param.subject}" scope="session"></set>
等价于
session.setAttribute("subject");
<c: set target="${requestScope.cust}" property="id" value="${param.id}"></c: set>
${requestScope.cust.id}
属性:
名称 | 说明 | EL | 类型 | 必须 | 默认值 |
value | 要被储存的值 | Y | Object | 否 | 无 |
var | 就存入的变量名称 | N | String | 否 | 无 |
scope | var变量的JSP范围 | N | String | 否 | page |
target | 为一个JavaBean或java.util.Map对象 | Y | Object | 否 | 无 |
property | 指定target对象的属性 | Y | String | 否 | 无 |
<c: remove>:移除指定域对象的指定属性值
<c: remove var="date" scope="session"/>