最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVAE中servlet的概念及使用示例詳解

 更新時間:2024年05月16日 10:13:04   作者:Achlorine  
servlet是一種實(shí)現(xiàn)動態(tài)頁面的技術(shù),他是由tomcat提供給程序員的一組API可以幫助程序員開發(fā)一個web程序,這篇文章主要介紹了JAVAE中servlet的概念及使用,需要的朋友可以參考下

servlet的概念

首先我們要搞明白什么是servlet,servlet是一種實(shí)現(xiàn)動態(tài)頁面的技術(shù),他是由tomcat提供給程序員的一組API可以幫助程序員開發(fā)一個web程序那么既然我們說到了實(shí)現(xiàn)動態(tài)頁面我們首先就要搞清楚什么是靜態(tài)頁面什么是動態(tài)頁面

靜態(tài)頁面和動態(tài)頁面

我們所說的動態(tài)頁面和靜態(tài)頁面其實(shí)指的是說這個頁面在不同的條件下它的內(nèi)容會發(fā)生改變,而靜態(tài)頁面則是指不同用戶,在不同地點(diǎn)的不同時間打開這個頁面的時候這個頁面的內(nèi)容并沒有發(fā)生任何的改變。 對應(yīng)的動態(tài)頁面就是指我們打開后內(nèi)容會發(fā)生變化,比如說b站之類的會根據(jù)我們個人的喜好給我們推薦視頻。

servlet的作用

  • 允許程序員注冊一個類在tomcat收到某個特定的HTTP請求的時候tomcat會執(zhí)行這個類中的代碼
  • 幫助程序員解析HTTP請求把HTTP請求從一個字符串解析成一個HTTPRequest對象
  • 幫助程序員制造出特定的HTTP響應(yīng)程序員只需要將自己要返回的內(nèi)容寫入HTTPResponse對象填寫一些屬性字段servlet就會自動的安裝HTTP協(xié)議的方式構(gòu)造出一個HTTP響應(yīng)字段并通過socket接口返回

寫出一個servlet程序

首先我們想要寫出一個servelet程序第一件事情肯定是要創(chuàng)建一個項目這里我們創(chuàng)建一個什么項目呢?答案是一個mavean項目,那么創(chuàng)建好之后我們還要引入servlet的各種接口那么這里的引入和我門平時的引入是有一些區(qū)別的,這里的引入呢是在配置文件中進(jìn)行導(dǎo)入那么具體該怎么做呢?我們只需要在配置文件中加入這樣一段代碼就可以了

<dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>


當(dāng)我們的項目創(chuàng)建好之后我們只需要在pom.xml這個文件中導(dǎo)入依賴就可以了,導(dǎo)入方法就是將上面的代碼導(dǎo)入即可。此外我們導(dǎo)入的時候要注意導(dǎo)入的serlet版本與tomcat版本要一致參照表格如下

目錄的創(chuàng)建

當(dāng)我們創(chuàng)建好項目之后我們還有一些工作要做那就是創(chuàng)建好我們需要創(chuàng)建的目錄,那么我們需要創(chuàng)建哪些目錄呢?首先就是我們的web目錄結(jié)構(gòu)如下

這里我們的web目錄實(shí)在main目錄下并且其結(jié)構(gòu)位webapp->WEB_INF->web.xml,那么這個web.xml中包含了哪些東西呢?我們把這段代碼復(fù)制進(jìn)去

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
    <display-name>Archetype Created Web Application</display-name>
</web-app>

設(shè)置smart tomcat

在這里面主要就是這個context path這個路徑,因為我們的這個路徑是我們在訪問的時候第一級路徑。

編寫helloworld

那么上面配置搞好了之后我們來寫一個helloworld,那么想要寫出代碼我們首先要調(diào)用方法才可以,在這里我們用的方法不是main方法而是下面這兩個

import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/login2 ")
public class login extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("hello world");
        resp.getWriter().write("hello world");
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    }
}

其中我們主要的代碼就是這樣用到的方法也就是這兩個方法那么我們先運(yùn)行一下,那么我們運(yùn)行起來之后我們?nèi)绾斡脼g覽器去訪問呢?
那就需要我們輸入url這個url是有規(guī)定的首先我們代碼中必須要加上的一個代碼就是下面的這個

@WebServlet("這里面隨便寫前提是必須以(‘/')開頭模仿上面的代碼")

并且我們上面說的Context path是作為一級目錄使用比如說我們的代碼url如何寫呢?如下

http://127.0.0.1:8080/test_login2/login2

然后我們來看一下最終的效果

很明顯我們成功了確實(shí)是非常的不容易啊歷經(jīng)這么多的步驟才寫出來了一個helloworld并且在初次學(xué)習(xí)的時候我們肯定會遇到各種各樣的坑和錯誤那么我們應(yīng)該做的就是耐心去調(diào)整代碼在錯誤中進(jìn)步

到此這篇關(guān)于JAVAE中servlet的概念及使用的文章就介紹到這了,更多相關(guān)JAVAEE servlet使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器)

    Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器)

    這篇文章主要介紹了Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Maven的幾個常用plugin

    Maven的幾個常用plugin

    本文主要介紹了Maven的幾個常用plugin。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • Java中Lambda表達(dá)式基礎(chǔ)及使用

    Java中Lambda表達(dá)式基礎(chǔ)及使用

    這篇文章主要介紹了Lambda 是JDK 8 的重要新特性。它允許把函數(shù)作為一個方法的參數(shù)(函數(shù)作為參數(shù)傳遞進(jìn)方法中),使用 Lambda 表達(dá)式可以使代碼變的更加簡潔緊湊,使Java代碼更加優(yōu)雅,感興趣的小伙伴一起來學(xué)習(xí)吧
    2021-08-08
  • SpringBoot使用AOP與注解實(shí)現(xiàn)請求參數(shù)自動填充流程詳解

    SpringBoot使用AOP與注解實(shí)現(xiàn)請求參數(shù)自動填充流程詳解

    面向切面編程(aspect-oriented programming,AOP)主要實(shí)現(xiàn)的目的是針對業(yè)務(wù)處理過程中的切面進(jìn)行提取,諸如日志、事務(wù)管理和安全這樣的系統(tǒng)服務(wù),從而使得業(yè)務(wù)邏輯各部分之間的耦合度降低,提高程序的可重用性,同時提高了開發(fā)的效率
    2023-02-02
  • @PathVariable為空時指定默認(rèn)值的操作

    @PathVariable為空時指定默認(rèn)值的操作

    這篇文章主要介紹了@PathVariable為空時指定默認(rèn)值的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 使用SpringMVC的@Validated注解驗證的實(shí)現(xiàn)

    使用SpringMVC的@Validated注解驗證的實(shí)現(xiàn)

    這篇文章主要介紹了使用SpringMVC的@Validated注解驗證的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • SpringCloud?Nacos服務(wù)分級存儲模型詳解

    SpringCloud?Nacos服務(wù)分級存儲模型詳解

    Nacos服務(wù)分級存儲模型是Nacos存儲服務(wù)注冊信息和配置信息的核心模型之一,本文將對?Nacos?服務(wù)分級存儲模型進(jìn)行深入解析,感興趣的朋友一起看看吧
    2024-02-02
  • Java中文件創(chuàng)建于寫入內(nèi)容的常見方法

    Java中文件創(chuàng)建于寫入內(nèi)容的常見方法

    在日常開發(fā)中,肯定離不開要和文件打交道,今天就簡單羅列一下平時比較常用的創(chuàng)建文件并向文件中寫入數(shù)據(jù)的幾種方式,希望對大家有一定的幫助
    2023-10-10
  • SpringBoot3中token攔截器鏈的設(shè)計與實(shí)現(xiàn)步驟

    SpringBoot3中token攔截器鏈的設(shè)計與實(shí)現(xiàn)步驟

    本文介紹了spring boot后端服務(wù)開發(fā)中有關(guān)如何設(shè)計攔截器的思路,文中通過代碼示例和圖文講解的非常詳細(xì),具有一定的參考價值,需要的朋友可以參考下
    2024-03-03
  • mybatis存在更新不存在新增問題

    mybatis存在更新不存在新增問題

    這篇文章主要介紹了mybatis存在更新不存在新增問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08

最新評論

桦南县| 边坝县| 蓬安县| 濮阳县| 浠水县| 葫芦岛市| 内丘县| 枣强县| 永川市| 亳州市| 华池县| 蓬莱市| 霸州市| 塔河县| 罗甸县| 文昌市| 准格尔旗| 新邵县| 馆陶县| 左权县| 尉犁县| 东阿县| 息烽县| 留坝县| 密云县| 泾阳县| 洞口县| 芜湖市| 仁怀市| 尼木县| 宁海县| 赤壁市| 大宁县| 赣州市| 溧阳市| 当涂县| 吴江市| 崇明县| 建平县| 山东| 乌兰县|