jsp学习笔记之JSTL(八)

八. JSTL

1. pom 先引入两个jar包

  <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
  </dependency>
  <!-- https://mvnrepository.com/artifact/taglibs/standard -->
  <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
  </dependency>

2. 引入taglib

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
jsp学习笔记之JSTL(八)_第1张图片

3. 核心标签库:通用标签库、条件标签库、迭代标签库

通用标签库

  1. 赋值
    a. 在某个作用域之中,给某个变量赋值
    b.给对象的属性赋值
    c.给map对象的属性赋值
    d.给不存在的变量赋值(不可以给不存在的对象属性赋值赋值)
    ----给某个变量赋值----<br>
    <c:set var="name" value="zs" scope="request"/>
    ${name}<br>

    ----给对象的属性赋值----<br>
    ${requestScope.student.sname}<br>

    <c:set target="${requestScope.student}" property="sname" value="xzs"></c:set>
    ${requestScope.student.sname}<br>

    ----给map对象的属性赋值----<br>
    ${requestScope.map.cn}<br>
    <c:set target="${requestScope.map}" property="cn" value="zhongguo"></c:set>
    ${requestScope.map.cn}<br>

    ----给不存在的变量赋值----<br>
    <c:set var="y" scope="request" value="z"></c:set>
    ${requestScope.y}

    ----不可以给不存在的对象属性赋值赋值----<br>
  1. 显示
传统:${requestScope.student}<br>
    jstl,c:out显示 :<c:out value="${requestScope.student}"></c:out><br>
    jstl,c:out显示不存在的值 :<c:out value="${requestScope.stud}" default="不存在则显示默认值"></c:out><br>
    escapeXml="true":<c:out value="baidu
"
escapeXml="true"></c:out><br> escapeXml="false":<c:out value="baidu
"
escapeXml="false"></c:out><br>
  1. 删除
    ----c:remove----<br>
    <c:set var="a" scope="request" value="a"></c:set>
    创建:${requestScope.a}<br>
    <c:remove var="a" scope="request"></c:remove>
    删除:${requestScope.a}<br>
  1. 单个判断
    ----c:if----<br>
    <c:if test="${10>2}" var="result" scope="request">真    ${requestScope.result}</c:if><br>
  1. 多个判断
 ----c:choose----<br>
    <c:set var="role" value="学生" scope="request"></c:set><br>
    ${requestScope.role}<br>
    <c:choose>
        <c:when test="${requestScope.role == '老师'}">a</c:when>
        <c:when test="${requestScope.role == '学生'}">b</c:when>
        <c:otherwise>c</c:otherwise>
    </c:choose><br>
    注意这边的test="这里面不能有空格!!!" 例如:test="10>2 "=false<br>
  1. 循环
----c:forEach----<br>
    <c:forEach begin="1" end="10" step="1" var="i" varStatus="status">
        ${i},a,${status.index}...
    </c:forEach>
    <br>
    names:${requestScope.names}<br>
    <c:forEach items="${requestScope.names}" var="name" >
        ${name},
    </c:forEach><br>

    students:${requestScope.students}<br>
    <c:forEach items="${requestScope.students}" var="student"   >
        ${student.sname}---${student.sno}
    </c:forEach><br>
    同样,items不能加空格,否则就报错。例如:items="$ {requestScope.students} "  错的×

你可能感兴趣的:(笔记,jsp,jstl,jsp)