目录
全称:JSP Standard Tag Library
中文名:JSP标准标签库
作用:用于扩展JSP中的标签,能够为JSP页面提供流程控制、类型转换等功能的标签。替换JSP中代码脚本
- 核心标签库 http://java.sun.com/jsp/jstl/core c
- 格式化 http://java.sun.com/jsp/jstl/fmt fmt
- 函数 http://java.sun.com/jsp/jstl/functions fn
- 数据库(不使用) http://java.sun.com/jsp/jstl/sql sql
- XML(不使用) http://java.sun.com/jsp/jstl/xml x
1.导入 jstl-1.2.jar 与 standard-1.1.2.jar 包
2.导入标签
3.使用
tabglib指令引入标签库
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- taglib引入
-
- <%@ page import="com.dao.StudentDaolmpl" %>
- <%@ page import="com.filter.Student" %>
- <%@ page import="java.util.List" %>
- <%@ page contentType="text/html;charset=UTF-8" language="java" %>
- 导入包
作用:可以给域中保存数据
scope:设置保存域
page 表示 PageContext域,默认值
request表示Request域
session表示Session域
application表示ServletContext域
var:键 value:值
语法:
<c:set scope="page" var="" value="" />
例:
- <c:set scope="request" var="name" value="纳西妲">
- <c:set var="name" value="布耶尔">
-
- ${pageScope.name}
- ${requestScope.name}
作用:判断
属性:test,判断条件:使用EL表达式
语法
这个没有else
例如:
- <c:if test="${1==1}">
- <h3>相同</h3>
- </c:if>
- <c:if test="${1!=1}">
- <h3>不相同</h3>
- </c:if>
大标签
包小的
1,when只要有一个成立就不会判断其他条件
2,标签中不能使用html注释,可以使用jsp注释
3,when的父标签必须是choose标签
例如:
- <c:set scope="request" var="score" value="80"/>
- <c:choose>
- <c:when test="${requestScope.score > 100 || requestScope.score<0}">
- <h3>成绩有误</h3>
- </c:when>
- <c:when test="${requestScope.score >= 85}">
- <h3>A</h3>
- </c:when>
- <c:when test="${requestScope.score >= 70}">
- <h3>B</h3>
- </c:when>
- <c:when test="${requestScope.score >= 60}">
- <h3>C</h3>
- </c:when>
- <c:otherwise>
- <h3>D</h3>
- </c:otherwise>
- </c:choose>
作用:遍历
属性:
var:遍历出的数据,指定一个名字
begin:开始
end:结束
items:遍历的数据源
step:指定元素的间隔数(默认为1,依次取出)
- <c:forEach var="遍历的变量" begin="开始位置" end="结束位置">
-
- </c:forEach>
例:
- <%
- StudentDaolmpl daolmpl= new StudentDaolmpl();
- List<Student> list = daolmpl.getStudent();
- %>
-
- <hr1>学生单子<hr1/>
-
- <%session.setAttribute("stu",list); %>
- <table>
- <tr>
- <td> 姓名</td>
- <td> 班级</td>
- <td> 学号</td>
- <td> 年龄</td>
- <td> 学分</td>
- </tr>
- <c:forEach items="${sessionScope.stu}" var="u">
- <tr>
- <td> ${u.m_name}</td>
- <td>${u.m_class}</td>
- <td> ${u.m_nanber}</td>
- <td> ${u.m_age}</td>
- <td> ${u.m_score}</td>
- </tr>
- </c:forEach>
- <table/>
作用:格式化数字
属性:
value:值
pattern:格式
#:忽略前后0
0:小数点后一位数字
.:小数符号
type:类型
1,number:数字,默认保留三位
2,currency:货币,保存到分,符号跟随当前系统
3,percent:百分比,原数值*100舍去小数位
- <% request.setAttribute("num",3.141592653);
- %>
- <br>
- <fmt:formatNumber value="${requestScope.num}" pattern="#.00">
- <%-- 保留后两位,默认四舍五入--%>
- <br>
- <fmt:formatNumber value="${requestScope.num}" type="number"/>
- <%-- 数字默认保留三位--%>
- <br>
-
- <fmt:formatNumber value="${requestScope.num}" type="currency"/>
- <%-- 根据市区加个钱符号,保留到分,--%>
-
- <br>
-
- <fmt:formatNumber value="${requestScope.num}" type="percent"/>
- <%-- 百分比,原数乘100,舍去小数位--%>
作用:格式化时间
属性:
value:值
pattern:格式
- <%
- request.setAttribute("date",new Date());
- %>
-
- <fmt:formatDate value="${date}" pattern="yyyy-MM-dd HH-mm-ss"/>