javaweb学习19:JSP, JSTL标签

javaweb学习19:JSP, JSTL标签

  • JSP标签:3种

    <jsp:include />

    <%--页面转发:
       http://localhost:8080/jsptag.jsp?name=张三&age=12
    --%>
    <jsp:forward page="/jsptag2.jsp">
       <jsp:param name="name" value="张三"/> //参数
       <jsp:param name="age" value="12"/> //参数
    </jsp:forward>

 

  • JSTL标签库:

    • JSTL标签库的使用就是为了弥补HTML标签的不足;它自定义了许多标签,可以供我们使用,标签的功能和Java代码一样!

       

    • 核心标签:(掌握部分即可)

    • 格式化标签:

    • SQL标签:

    • XML标签:

 

  • JSTL标签库使用步骤:

    • 引入对应的taglib:

      <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    • 使用其中的方法;

    • 在Tomcat也需要引入jstl包,否则也会报taglib的错误;

 

  • EL表达式:(EL:Expression Language)

    • 语法:

      EL表达式语法:
      ${ }
    • 作用:

      • 获取数据;

      • 执行运算;

      • 获取web开发的常用对象;

       

    • 依赖包:

      <!-- JSTL表达式的依赖 -->
      <dependency>
         <groupId>javax.servlet.jsp.jstl</groupId>
         <artifactId>jstl-api</artifactId>
         <version>1.2</version>
      </dependency>

      <!-- standard标签库 -->
      <dependency>
         <groupId>taglibs</groupId>
         <artifactId>standard</artifactId>
         <version>1.1.2</version>
      </dependency>

 

  • 代码案例:JSTL,EL表达式

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>

    <%--引入JSTL核心标签库,我们才能使用JSTL标签
       prefix="c":c代表core
    --%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

    <html>
    <head>
       <title>Title</title>
    </head>
    <body>

    <h4>if测试</h4>

    <hr>

    <form action="coreif.jsp" method="get">
      <%--
           EL表达式获取表单中的数据:
           ${param.参数名}
       --%>
       <input type="text" name="username" value="${param.username}">
       <input type="submit" value="登录">

    </form>

    <%--判断如果提交的用户名是管理员,则登录成功 --%>
    <c:if test="${param.username == 'admin'}" var="isAdmin">
       <c:out value="管理员欢迎你"/>
    </c:if>
    <c:out value="${isAdmin}"/>


    </body>
    </html>

     

  • 代码案例:JSTL标签:<c:set ; <c:choose ; <c:when

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
       <title>Title</title>
    </head>
    <body>

    <%--定义一个变量score,值为85 --%>
    <c:set var="score" value="85"/>


    <c:choose >
       <c:when test="${score>=90}">
          你的成绩为优秀!
       </c:when>
       <c:when test="${score>=60}">
          你的成绩为良好!
       </c:when>
       <c:when test="${score<=60}">
          你的成绩为差!
       </c:when>
    </c:choose>



    </body>
    </html>

     

  • 代码案例:<c:forEach

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@ page import="java.util.ArrayList" %><%--
     Created by IntelliJ IDEA.
     User: lujiaxiang
     Date: 2022/3/28
     Time: 18:52
     To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
       <title>Title</title>
    </head>
    <body>

    <%
       ArrayList<String> people = new ArrayList<>();
       people.add(0,"张三");
       people.add(1,"李四");
       people.add(2,"王五");
       people.add(3,"赵六");
       request.setAttribute("list",people);
    %>

    <%--
       var:每一次遍历出来的变量;
       times:要遍历的对象
    --%>
    <c:forEach var="people" items="${list}">
       <c:out value="${people}"/>
       <br>
    </c:forEach>

    <hr>

    <%--
       var:每一次遍历出来的变量;
       times:要遍历的对象
       begin:哪里开始
       end:到哪里
       step:步长
    --%>
    <c:forEach  var="people" items="${list}" begin="1" end="3" step="2">
       <c:out value="${people}"/>
    </c:forEach>


    </body>
    </html>

     

 

 

posted @   gzs1024  阅读(40)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示