国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)

這篇具有很好參考價值的文章主要介紹了JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. JSTL 標(biāo)簽庫介紹

  1. JSTL 標(biāo)簽庫 是指 JSP Standard Tag Library :JSP 標(biāo)準(zhǔn)標(biāo)簽庫
  2. EL 表達(dá)式是為了替換 jsp 中的表達(dá)式腳本,JSTL 是為了替換代碼腳本。這樣 jsp 頁面變得更佳簡潔
  3. JSTL 由五個標(biāo)簽庫組成
    JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)
  4. 使用 JSTL,需要導(dǎo)入相關(guān)的 jar 包
    JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)

2. JSTL 快速入門

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>jstl的快速入門</title>
</head>
<body>
<h1>jstl的快速入門</h1>
<%--解讀
    1. c:if ... 類似
    2. if(10>2){
       out.println("<h1>10 > 2 成立~</h1>")
    }
--%>
<c:if test="${10 < 2}">
    <h1>10 > 2 成立~</h1>
</c:if>
</body>
</html>

注意細(xì)節(jié)
● taglib 引入標(biāo)簽,要放在行首
● 導(dǎo)入 jstl jar 包后,要重新發(fā)布 web 工程,否則不識別 jstl

3. core 核心庫

3.1 <c:set />

  1. 介紹:
    <c:set scope="request" var="username" value="hello~"/>
    JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>c:set標(biāo)簽的使用</title>
</head>
<body>
<h1>c:set標(biāo)簽的使用</h1>
<%--<%--%>
<%--    //Java代碼--%>
<%--    request.setAttribute("email", "hsp@sohu.com");--%>
<%--%>--%>
<%--解讀
    <c:set /> set 標(biāo)簽可以往域中保存數(shù)據(jù)
    1. 等價 域?qū)ο?span id="n5n3t3z"    class="token punctuation">.setAttribute(key,value);
    2. scope 屬性設(shè)置保存到哪個域
            page 表示 PageContext 域(默認(rèn)值)
            request 表示 Request 域
            session 表示 Session 域
            application 表示 ServletContext3. var 屬性設(shè)置 key 是什么
    4. value 屬性設(shè)置值
--%>
<c:set scope="request" var="name" value="hello~"></c:set>
c:set-name的值${requestScope.name}
</body>
</html>

3.2 <c:if />

  1. 介紹
    <c:if test="${ 10 > 2 }">hello</c:if>
    JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>c:if標(biāo)簽使用</title>
</head>
<body>
<c:set scope="request" var="num1" value="20"></c:set>
<c:set scope="request" var="num2" value="10"></c:set>
<c:if test="${num1 > num2}">
    <h1>${num1} > ${num2}</h1>
</c:if>
</body>
</html>

3.3 <c:choose> <c:when> <c:otherwise>標(biāo)簽

  1. 介紹: 多路判斷。跟 switch … case … default 非常接近
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>c:choose標(biāo)簽的使用</title>
</head>
<body>
<h1>c:choose標(biāo)簽的使用</h1>
<%
    request.setAttribute("score", 50);

    //request.setAttribute("k1", "request-k1的值");
    //session.setAttribute("k1", "session-k1的值");
    //application.setAttribute("k1", "application-k1的值");
    //pageContext.setAttribute("k1", "pageContext-k1的值~");
%>
<%--老師多說一句
1. 如果${requestScope.score} 那么就明確的指定從request域?qū)ο笕〕鰯?shù)據(jù)
2. 如果${score}, 這是就按照從小到大的域范圍去獲取 pageContext->request->session->application
3. 一會給小伙伴驗證一把.
--%>
k1=${k1}
<c:choose>
	<%--test雙引號內(nèi)不要隨便加空格 會導(dǎo)致該語句失效--%>
    <c:when test="${requestScope.score > 80}">
        <h1>${score}-成績優(yōu)秀</h1>
    </c:when>
    <c:when test="${requestScope.score >= 60}">
        <h1>${score}-成績一般, 及格了</h1>
    </c:when>
    <c:otherwise>
        <h1>${score}-沒有及格,下次努力~</h1>
    </c:otherwise>
</c:choose>
</body>
</html>

3.4 <c:forEach />標(biāo)簽

  1. 介紹
    c:forEach 標(biāo)簽 用來遍歷輸出, 主要有 4 種形式:
    ● 普通遍歷輸出 i 到 j
    ● 遍歷數(shù)組
    ● 遍歷 Map
    ● 遍歷 List

JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)

<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>
<%@ page import="com.hspedu.entity.Monster" %>

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

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>c:forEach 標(biāo)簽</title>
</head>
<body>
<h1>c:forEach 標(biāo)簽</h1>
<hr/>
<h1>1種遍歷方式從i到j(luò)</h1>
<ul>
    <%--
    1.遍歷 152. 輸出 begin 屬性設(shè)置開始的索引 end 屬性設(shè)置結(jié)束的索引
    3. var 屬性表示循環(huán)的變量(也是當(dāng)前正在遍歷到的數(shù)據(jù))
    4. 等價 for (int i = 1; i <= 5; i++) {}
    5. 在默認(rèn)情況下, i 每次會遞增1
    --%>
    <c:forEach begin="1" end="5" var="i">
        <li>排名=${i}</li>
    </c:forEach>
</ul>
<hr/>
<h1>2種遍歷方式:遍歷數(shù)組</h1>
<%
    request.setAttribute("sports", new String[]{"打籃球", "乒乓球"});
%>
<%--
    <c:forEach items="${ requestScope.sports }" var="item"/>
    1. items 遍歷的集合/數(shù)組
    2. var 遍歷到的數(shù)據(jù)
    3. 等價 for (Object item: arr) {}
--%>
<c:forEach items="${requestScope.sports}" var="sport">
    運動名稱= ${sport}<br/>
</c:forEach>
<hr/>
<h1>3種遍歷方式:遍歷Map</h1>
<%
    Map<String, Object> map = new HashMap<>();
    map.put("key1", "北京");
    map.put("key2", "上海");
    map.put("key3", "天津");
    request.setAttribute("cities", map);
%>
<%--
    1. items 遍歷的map集合
    2. var 遍歷到的數(shù)據(jù)
    3. entry.key 取出key
    4. entry.value 取出值
--%>
<c:forEach items="${requestScope.cities}" var="city">
    城市信息: ${city.key}--${city.value}<br/>
</c:forEach>
<hr/>
<h1>4種遍歷方式:遍歷List</h1>
<%
    List<Monster> monsters = new ArrayList<>();
    monsters.add(new Monster(100, "小妖怪", "巡山的"));
    monsters.add(new Monster(200, "大妖怪", "做飯的"));
    monsters.add(new Monster(300, "老妖怪", "打掃位置的"));
    request.setAttribute("monsters", monsters);
%>
<%--
    items 表示遍歷的集合
    var 表示遍歷到的數(shù)據(jù)
    begin 表示遍歷的開始索引值 ,0開始計算
    end 表示結(jié)束的索引值
    step 屬性表示遍歷的步長值
    varStatus 屬性表示當(dāng)前遍歷到的數(shù)據(jù)的狀態(tài),可以得到step,begin,end等屬性值
    //老師提示, 對于jstl標(biāo)簽,能看懂,會使用即可
--%>
<c:forEach items="${requestScope.monsters}" var="monster">
    妖怪的信息: ${monster.id}-${monster.name}-${monster.skill}<br/>
</c:forEach>
</body>
</html>

Monster.java

public class Monster {
    private Integer id;
    private String name;
    private String skill;

    public Monster(Integer id, String name, String skill) {
        this.id = id;
        this.name = name;
        this.skill = skill;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSkill() {
        return skill;
    }

    public void setSkill(String skill) {
        this.skill = skill;
    }
}

4. JSTL+EL 作業(yè)

4.1 作業(yè)布置

● 需求分析:
使用 jsp+servlet+jstl+el 完成查詢-顯示案例, 需求如圖

JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)
JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)

  1. 點擊超鏈接, 可以顯示所有的妖怪信息
  2. 要求顯示的數(shù)據(jù)在 Servlet 準(zhǔn)備,并放入到 request 域?qū)ο?/li>
  3. 擴(kuò)展, 如果要求增加根據(jù) id 條件過濾, 怎么處理? - 老韓忠告:一定要自己先思考->完成->再看評講

● 思路分析(程序框架圖)
JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)

4.2 作業(yè)評講

query.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>查詢妖怪</title>
</head>
<body>
<h1>查詢妖怪</h1>
<a href="<%=request.getContextPath()%>/queryServlet">點擊查詢所有的妖怪</a>
</body>
</html>

QueryServlet.java

public class QueryServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //1. 準(zhǔn)備要顯示的數(shù)據(jù)--> 從DB
        ArrayList<Monster> list = new ArrayList<>();
        list.add(new Monster(100, "牛魔王", "芭蕉扇"));
        list.add(new Monster(200, "狐貍精", "美人計"));
        list.add(new Monster(300, "白骨精", "吃人骨頭"));

        //2. 把list放入到request域, 供jsp頁面使用
        request.setAttribute("monsters", list);
        //3. 請求轉(zhuǎn)發(fā) list.jsp
        request.getRequestDispatcher("/hm/list.jsp")
                .forward(request,response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }
}

list.java文章來源地址http://www.zghlxwxcb.cn/news/detail-437954.html

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

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>顯示所有的妖怪</title>
</head>
<body>
<h1>顯示所有的妖怪</h1>
<table border="1px" width="400px">
    <tr>
        <td>id</td>
        <td>name</td>
        <td>skill</td>
    </tr>
<%--    使用c:foreach循環(huán)顯示即可 顯示id > 200--%>
    <c:forEach items="${monsters}" var="monster">
        <c:if test="${monster.id >= 200}">
            <tr>
                <td>${monster.id}</td>
                <td>${monster.name}</td>
                <td>${monster.skill}</td>
            </tr>
        </c:if>
    </c:forEach>

</table>
</body>
</html>

到了這里,關(guān)于JAVAWeb11-服務(wù)器渲染技術(shù) -JSP-03-JSTL(會使用)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【無標(biāo)題】JSP--Java的服務(wù)器頁面

    【無標(biāo)題】JSP--Java的服務(wù)器頁面

    jsp是什么? jsp的全稱是Java server pages,翻譯過來就是java的服務(wù)器頁面。 jsp有什么作用? jsp的主要作用是代替Servlet程序回傳html頁面的數(shù)據(jù),因為Servlet程序回傳html頁面數(shù)據(jù)是一件非常繁瑣的事情,開發(fā)成本和維護(hù)成本都非常高。 下面演示一下通過Servlet來回傳數(shù)據(jù): 首先我們

    2024年02月14日
    瀏覽(18)
  • 什么是JavaWeb(概念|應(yīng)用|服務(wù)器)?

    什么是JavaWeb(概念|應(yīng)用|服務(wù)器)?

    #1概念# web開發(fā) : web,網(wǎng)頁的意思,比如www.baidu.com 靜態(tài)web : html,css 靜態(tài)網(wǎng)站是指在服務(wù)器上預(yù)先準(zhǔn)備好的網(wǎng)頁內(nèi)容,用戶訪問時服務(wù)器直接將這些靜態(tài)頁面發(fā)送給用戶瀏覽器,沒有經(jīng)過額外的處理或數(shù)據(jù)庫查詢。靜態(tài)網(wǎng)站通常由HTML、CSS和JavaScript等靜態(tài)文件組成。相比動

    2024年03月16日
    瀏覽(22)
  • JavaWeb ( 三 ) Web Server 服務(wù)器

    JavaWeb ( 三 ) Web Server 服務(wù)器

    Web Server 服務(wù)器是一種安裝在服務(wù)器主機(jī)上的應(yīng)用程序, 用于處理客戶端(Web瀏覽器)的請求,并返回響應(yīng)內(nèi)容。服務(wù)器使用HTTP(超文本傳輸協(xié)議)與客戶機(jī)瀏覽器進(jìn)行信息交流。 簡單說就是將http協(xié)議的信息翻譯成對應(yīng)開發(fā)語言可以處理的對象信息。 例如 : Tomcat將http協(xié)議所傳遞的

    2024年02月02日
    瀏覽(42)
  • 爬蟲——服務(wù)器渲染和客戶端渲染

    爬蟲——服務(wù)器渲染和客戶端渲染

    目錄 爬蟲——服務(wù)器渲染和客戶端渲染 服務(wù)器渲染 客戶端渲染 專業(yè)解釋 服務(wù)器渲染(Server-Side Rendering,SSR)是一種在服務(wù)器端完成頁面渲染的網(wǎng)頁處理技術(shù)。具體來說,就是服務(wù)器在響應(yīng)客戶端請求時,會生成頁面的HTML代碼,并將其返回給客戶端。這種方式的優(yōu)點包括更

    2024年02月06日
    瀏覽(25)
  • 在eclipse上安裝JavaWeb插件,配置tomcat服務(wù)器和新建JavaWeb項目

    在eclipse上安裝JavaWeb插件,配置tomcat服務(wù)器和新建JavaWeb項目

    在eclipse上安裝JavaWeb插件,配置tomcat服務(wù)器和新建JavaWeb項目的具體步驟如下: 一、eclipse上安裝JavaWeb插件 1.在官網(wǎng)下載tomcat服務(wù)器zip包,解壓到C盤(根據(jù)需求自行選擇解壓位置)。 2.打開eclipse選擇幫助。 3.選擇關(guān)于,查看eclipse版本。 ?4.記住版本,然后選擇安裝插件。 5.選

    2024年02月06日
    瀏覽(22)
  • 使用寶塔部署JavaWeb前后端項目到服務(wù)器

    使用寶塔部署JavaWeb前后端項目到服務(wù)器

    1.我使用的是騰訊云的輕量應(yīng)用服務(wù)器,在安裝系統(tǒng)的時候可以選擇使用寶塔Linux面板。 ?2.安裝了寶塔面板以后,可以在應(yīng)用管理中看到寶塔面板的登陸地址。在登錄之前需要在 用戶名和密碼那一欄 登錄,來獲取寶塔的用戶名和密碼。 3.進(jìn)入寶塔以后輸入用戶名和密碼即可

    2024年02月04日
    瀏覽(26)
  • C++服務(wù)器框架03_日志系統(tǒng)03_appender

    sylar/log.h sylar/log.cpp

    2024年02月13日
    瀏覽(20)
  • JavaWeb-WebSocket瀏覽器服務(wù)器雙向通信

    JavaWeb-WebSocket瀏覽器服務(wù)器雙向通信

    WebSocket是基于TCP的一種新的網(wǎng)絡(luò)協(xié)議。它實現(xiàn)了瀏覽器與服務(wù)器 全雙工通信 —瀏覽器和服務(wù)器只需要完成一次握手,兩者之間就可以創(chuàng)建 持久性 的連接,并進(jìn)行雙向數(shù)據(jù)傳輸。 HTTP傳輸 WebSocket傳輸 HTTP協(xié)議和WebSocket協(xié)議的對比: HTTP是短連接,WebSocket是長連接 HTTP通信是單向

    2024年01月21日
    瀏覽(31)
  • 服務(wù)器渲染+自定義模塊+mysql操作

    服務(wù)器渲染+自定義模塊+mysql操作

    A.第一步,導(dǎo)入模塊庫和第三方庫 npm init npm --registry https://registry.npmmirror.com install art-template moment B.第二步,調(diào)整html文件 調(diào)整js文件 效果圖: 通過前面幾個章節(jié)的學(xué)習(xí),我們基本掌握了NodeJS編程的基礎(chǔ)知識,但是我們也直觀的發(fā)現(xiàn)了一個問題,和我們之前學(xué)習(xí)瀏覽器編程時

    2024年01月25日
    瀏覽(17)
  • JavaWeb項目部署到服務(wù)器并連接本地數(shù)據(jù)庫(超詳細(xì)!)

    JavaWeb項目部署到服務(wù)器并連接本地數(shù)據(jù)庫(超詳細(xì)!)

    目錄 一、下載XShell、Xftp工具 二 、建立服務(wù)器連接 三、服務(wù)器環(huán)境配置 四、打包web項目傳輸入服務(wù)器 五、服務(wù)器Web項目連接本地數(shù)據(jù)庫 個人博客歡迎訪問 --- 猿客棧 在XShell官網(wǎng)下載兩個工具,用來操作服務(wù)器的Linux系統(tǒng) 輸入服務(wù)器的主機(jī)名,驗證用戶和密碼,默認(rèn)用戶名

    2024年02月05日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包