• jetl标签的使用


    链接:https://pan.baidu.com/s/1fS_ZmxbvOihGfGP9v3c8rQ 
    提取码:ydhl

    学完这一章,javawep基础就学完了,一个暑假,我马马虎虎的过了一遍js,java高级,javawep,发现很多东西都是共通的,jetl标签就相当于js中的jQuery,类似java中的一些插件,作用都是方便我们造作页面。

    开始学习jetl之前下载好java包,放在wepapp的lib下;

     一共三个包,其实只需要两个,为了避免一些奇奇怪怪的bug,我们还是用三个,由于我是用的时tomcat10,所以jakarta会有一些不同,和老版本的路径不一样。

    首先导入路径:

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    

    这样我们就能在jsp页面中使用:

    来进行使用jetl标签,idea好像不用配置,我用的Eclipse,要配置文件:

    1. "1.0" encoding="UTF-8"?>
    2. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    5. version="3.1">
    6. <display-name>JavaWep10display-name>
    7. <welcome-file-list>
    8. <welcome-file>index.htmlwelcome-file>
    9. <welcome-file>index.htmwelcome-file>
    10. <welcome-file>index.jspwelcome-file>
    11. <welcome-file>default.htmlwelcome-file>
    12. <welcome-file>default.htmwelcome-file>
    13. <welcome-file>default.jspwelcome-file>
    14. welcome-file-list>
    15. <jsp-config>
    16. <taglib>
    17. <taglib-uri>http://java.sun.com/jsp/jstl/coretaglib-uri>
    18. <taglib-location>/WEB-INF/c.tldtaglib-location>
    19. taglib>
    20. <taglib>
    21. <taglib-uri>http://java.sun.com/jsp/jstl/fmttaglib-uri>
    22. <taglib-location>/WEB-INF/fmt.tldtaglib-location>
    23. taglib>
    24. <taglib>
    25. <taglib-uri>http://java.sun.com/jsp/jstl/sqltaglib-uri>
    26. <taglib-location>/WEB-INF/sql.tldtaglib-location>
    27. taglib>
    28. <taglib>
    29. <taglib-uri>http://java.sun.com/jsp/jstl/xmltaglib-uri>
    30. <taglib-location>/WEB-INF/x.tldtaglib-location>
    31. taglib>
    32. <taglib>
    33. <taglib-uri>http://java.sun.com/jsp/jstl/functionstaglib-uri>
    34. <taglib-location>/WEB-INF/fn.tldtaglib-location>
    35. taglib>
    36. jsp-config>
    37. web-app>

    放入wep.xml中,

    jetl可以直接取出作用域、设置、删除中的数据:

    1. <%@ page language="java" contentType="text/html; charset=UTF-8"
    2. pageEncoding="UTF-8"%>
    3. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    4. html>
    5. <html>
    6. <head>
    7. <meta charset="UTF-8">
    8. <title>Insert title heretitle>
    9. head>
    10. <body>
    11. <jsp:useBean id="book" class="Pojo.Book">jsp:useBean>
    12. <c:set target="${book}" property="name" value="唐诗三百首">c:set>
    13. <jsp:getProperty property="name" name="book" />
    14. <hr>
    15. <c:out value="${book.name}">c:out>
    16. <c:set var="text" value="123">c:set>
    17. <c:out value="${text}">c:out>
    18. <%
    19. //<c:remove var="varname" [scope="page|request|session|application]
    20. %>
    21. text}">c:out>
    22. body>
    23. html>

    :输出数据

    :设置数据

    :删除数据

    它们都可以指定范围:

    scope="page|request|session|application

    分别时:本页面、上一个页面传递、浏览器、服务器

    逻辑判断语句:

    1. <%@ page language="java" contentType="text/html; charset=UTF-8"
    2. pageEncoding="UTF-8"%>
    3. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    4. html>
    5. <html>
    6. <head>
    7. <meta charset="UTF-8">
    8. <title>Insert title heretitle>
    9. head>
    10. <body>
    11. <c:set var="num" value="3">c:set>
    12. <c:set var="danjia" value="2.6">c:set>
    13. <c:set var="vip" value="3">c:set>
    14. <c:if test="${vip eq 0}">
    15. <c:out value="${num*danjia}">c:out>
    16. c:if>
    17. <c:if test="${vip eq 1}">
    18. <c:out value="${num*danjia*0.9}">c:out>
    19. c:if>
    20. <c:if test="${vip eq 2}">
    21. <c:out value="${num*danjia*0.75}">c:out>
    22. c:if>
    23. <c:if test="${vip eq 3}">
    24. <c:out value="${num*danjia*0.6}">c:out>
    25. c:if>
    26. <br>
    27. <c:choose>
    28. <c:when test="${vip eq 1}">
    29. <c:out value="${num*danjia*0.9}">c:out>
    30. c:when>
    31. <c:when test="${vip eq 2}">
    32. <c:out value="${num*danjia*0.75}">c:out>
    33. c:when>
    34. <c:when test="${vip eq 3}">
    35. <c:out value="${num*danjia*0.6}">c:out>
    36. c:when>
    37. <c:otherwise>
    38. <c:out value="${num*danjia}">c:out>
    39. c:otherwise>
    40. c:choose>
    41. body>
    42. html>

     jetl可以通过两个逻辑判断语句:


           ......
        

    和if语句一样,


            
            .....满足条件
            

            
              .......上面的语句全部不满足
            

        

     jetl循环语句:

            遍历list:

            

    1. <%@page import="Pojo.Book"%>
    2. <%@page import="java.util.ArrayList"%>
    3. <%@ page language="java" contentType="text/html; charset=UTF-8"
    4. pageEncoding="UTF-8"%>
    5. <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    6. html>
    7. <html>
    8. <head>
    9. <meta charset="UTF-8">
    10. <title>Insert title heretitle>
    11. head>
    12. <body>
    13. <%
    14. ArrayList<Book> list = new ArrayList<>();
    15. list.add(new Book(1001, "童话里的故事"));
    16. list.add(new Book(1002, "也许生命和时间成正比"));
    17. list.add(new Book(1003, "月球之谜"));
    18. list.add(new Book(1004, "这个世界真实吗?"));
    19. session.setAttribute("bookList", list);
    20. %>
    21. <table width="600" border=1"">
    22. <tr>
    23. <td>序号td>
    24. <td>编号td>
    25. <td>姓名td>
    26. tr>
    27. <c:forEach items="${bookList}" var="i" varStatus="cont">
    28. <c:if test="${cont.index==0}">
    29. <tr bgcolor="red">
    30. c:if>
    31. <c:if test="${cont.index!=0}">
    32. <tr>
    33. c:if>
    34. <td>${cont.index+1}td>
    35. <td>${i.on}td>
    36. <td>${i.name}td>
    37. tr>
    38. c:forEach>
    39. table>
    40. body>
    41. html>

    遍历map:

    1. <%@page import="Pojo.Book"%>
    2. <%@page import="java.util.HashMap"%>
    3. <%@ page language="java" contentType="text/html; charset=UTF-8"
    4. pageEncoding="UTF-8"%>
    5. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    6. html>
    7. <html>
    8. <head>
    9. <meta charset="UTF-8">
    10. <title>Insert title heretitle>
    11. head>
    12. <body>
    13. <%
    14. HashMap map = new HashMap();
    15. map.put(1, new Book(1001, "童话里的故事"));
    16. map.put(2, new Book(1002, "也许生命和时间成正比"));
    17. map.put(3, new Book(1003, "月球之谜"));
    18. map.put(4, new Book(1004, "这个世界真实吗?"));
    19. session.setAttribute("map", map);
    20. %>
    21. <table width="600" border=1>
    22. <tr>
    23. <td>序号td>
    24. <td>编号td>
    25. <td>姓名td>
    26. tr>
    27. <c:forEach items="${map}" var="i" varStatus="cont">
    28. <tr>
    29. <td>${cont.index+1 }td>
    30. <td>${i.key}td>
    31. <td>${i.value.name}td>
    32. tr>
    33. c:forEach>
    34. table>
    35. body>
    36. html>


               循环体
            

    items为需要循环的数据,var为临时变量,这个语句相当于Java的加强fou循环,varStatus时一个计数器。

    所以在遍历map的时候,我们取出value(里面是一个实体类)然后取出名字。

  • 相关阅读:
    周赛361(模拟、枚举、记忆化搜索、统计子数组数目(前缀和+哈希)、LCA应用题)
    iframe通过postMessage进行跨域通信以及在Angular中使用
    『Linux - gcc / g++』c程序翻译过程
    CSS层级小技巧!如何在滚动时自动添加头部阴影?
    面试题 04.02.最小高度数
    MyBatis之动态SQL
    Windows系统加密
    人工智能学习相关笔记
    【Java 基础篇】Java 接口组成与更新详解
    算法D31 | 贪心算法1 | 455.分发饼干 376. 摆动序列 53. 最大子序和
  • 原文地址:https://blog.csdn.net/qx020814/article/details/126380067