欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java servlet后端開發(fā)超詳細教程

 更新時間:2023年02月08日 14:44:38   作者:練習時長六年半的Programmer  
Servlet指在服務器端執(zhí)行的一段Java代碼,可以接收用戶的請求和返回給用戶響應結果,下面這篇文章主要給大家介紹了關于Java.servlet生命周期的相關資料,需要的朋友可以參考下

java后端介紹

今天我正式開始了一個新話題,那就是 Web。目前我主要會介紹后端。作為后端的老大哥 java,也有很多后端框架,比如大家耳熟能詳?shù)?spring 等。今天來帶大家入門 servlet,不管是學生,剛畢業(yè)或是已經工作自學編程的人群都能看懂。

準備工作

目前我們使用的服務器是 Tomcat,大家可以先安裝 Tomcat,這一步網上有很多教程,我不再說了。然后還需要下載 idea,配置 Tomcat 和 jdk,這些網上都有,如果配置遇到問題可以私信我。

Servlet項目創(chuàng)建

大家先用idea 創(chuàng)建 web 項目,創(chuàng)建好后應是這樣。

現(xiàn)在在你的 src 目錄下創(chuàng)建一個package,并命名為 com.xxxx.servlet。

然后在這個包下面創(chuàng)建一個 java類,名叫 servlet(你也可以自己起名字)

Servlet的基礎使用

導入包

package com.xxxx.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;

主要是導入了 servlet 的基本方法。

創(chuàng)建 java 類,并繼承自HttpServlet 類

因為我們后面還要重寫 HttpServlet 類中的方法,所以要繼承這個類。

public class servlet extends HttpServlet{
}

重寫service方法

因為我們要處理請求,所以要重寫服務類來處理請求,否則處理不了請求。

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    }

設置訪問路徑

@WebServlet("/servlet01")

這行代碼加在類前面,這樣我們就可以通過 /servlet01 路徑來訪問。

內容

這里我們在控制臺(idea下面)和網頁(瀏覽器訪問)里分別打印一句話 "Hello Servlet!"

System.out.println("Hello Servlet");
//通過流輸出內容
resp.getWriter().write("Hello Servlet");

實例完整代碼

package com.xxxx.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;
/*
* 實現(xiàn) Servlet
* 1.創(chuàng)建 web 項目,配置 Servlet 和 Tomcat
* 2.創(chuàng)建普通 Java 類
* 3.繼承 HttpServlet 類
* 4.重寫 service 方法(處理請求,Ctrl+o,選擇倒數(shù)第二個鑰匙的)
* 5.處理請求
* 6.設置注解,指定訪問路徑
* 7.配置,見https://blog.csdn.net/Samzz33/article/details/116311106
* */
@WebServlet("/servlet01")
public class servlet extends HttpServlet{
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        super.service(req, resp);
        //打印內容在控制臺
        System.out.println("Hello Servlet");
        //通過流輸出內容
        resp.getWriter().write("Hello Servlet");
    }
}
 

運行

點擊 idea 右上角運行圖標

然后 idea 會打開 http://localhost:8080/servlet_war_exploded/

但是你看不到任何內容,因為你沒有訪問你剛才設置的路徑。

訪問 http://localhost:8080/servlet_war_exploded/servlet01

你會看到

這就成功了

servlet的生命周期

類加載->實例化->服務->銷毀

類加載

類加載在服務器啟動時就執(zhí)行,一次一個生命周期只執(zhí)行一次。

實例化

開始生命周期時,服務器判斷有沒有實例化,如果沒有則實例化。

寫一個函數(shù) init(),在實例化時執(zhí)行。

@Override
    public void init() throws ServletException {
        System.out.println("Servlet被創(chuàng)建");
    }

當實例化是,會在控制臺輸出文字。

服務

當收到請求就開始服務,一個生命周期執(zhí)行多次。

@Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Servlet被調用");
    }

銷毀

一個生命周期執(zhí)行一次,在服務器停止時執(zhí)行,也就是你停止運行程序時。

@Override
    public void destroy() {
        System.out.println("Servlet被銷毀");
    }

完整代碼

package com.xxxx.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;
/*
* Servlet生命周期: 類加載->實例化->服務->銷毀
* */
@WebServlet("/servlet02")
public class servlet02 extends HttpServlet{
    /*
    * 一個生命周期只執(zhí)行一次,服務器判斷是否存在,不存在則創(chuàng)建實例,自動調用
    * */
    @Override
    public void init() throws ServletException {
        System.out.println("Servlet被創(chuàng)建");
    }
    /*
    * 服務方法,自動調用,當接收到請求就會調用該方法,可以被多次調用
    * */
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Servlet被調用");
    }
    /*
     * 一個生命周期只執(zhí)行一次,服務器停止時運行該方法
     * */
    @Override
    public void destroy() {
        System.out.println("Servlet被銷毀");
    }
}
 

到此這篇關于Java servlet后端開發(fā)超詳細教程的文章就介紹到這了,更多相關Java servlet內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Spring boot @RequestBody數(shù)據(jù)傳遞過程詳解

    Spring boot @RequestBody數(shù)據(jù)傳遞過程詳解

    這篇文章主要介紹了Spring boot @RequestBody數(shù)據(jù)傳遞過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Spring Boot 中PageHelper 插件使用配置思路詳解

    Spring Boot 中PageHelper 插件使用配置思路詳解

    這篇文章主要介紹了Spring Boot 中PageHelper 插件使用配置及實現(xiàn)思路,通過引入myabtis和pagehelper依賴,在yml中配置mybatis掃描和實體類,具體實現(xiàn)方法跟隨小編一起看看吧
    2021-08-08
  • 一行java代碼實現(xiàn)高斯模糊效果

    一行java代碼實現(xiàn)高斯模糊效果

    這篇文章主要為大家詳細介紹了一行java代碼實現(xiàn)高斯模糊效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Spring官網下載各版本jar包的方法

    Spring官網下載各版本jar包的方法

    這篇文章主要介紹了Spring官網下載各版本jar包的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • 新手初學Java集合框架

    新手初學Java集合框架

    這篇文章主要介紹了JAVA集合框架的相關知識,文中講解非常細致,幫助大家更好的理解學習JAVA框架,感興趣的朋友快來了解下,希望能給你帶來幫助
    2021-07-07
  • java類加載機制、類加載器、自定義類加載器的案例

    java類加載機制、類加載器、自定義類加載器的案例

    這篇文章主要介紹了java類加載機制、類加載器、自定義類加載器的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 一文詳解java閉包的用途是什么

    一文詳解java閉包的用途是什么

    閉包的價值在于可以作為函數(shù)對象或者匿名函數(shù),持有上下文數(shù)據(jù),作為第一級對象進行傳遞和保存,下面這篇文章主要給大家介紹了關于java閉包的用途是什么,需要的朋友可以參考下
    2024-03-03
  • jax-ws handler 的詳解及簡單實例

    jax-ws handler 的詳解及簡單實例

    這篇文章主要介紹了 jax-ws handler 的詳解及簡單實例的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • mybatisplus解決駝峰命名映射問題詳解

    mybatisplus解決駝峰命名映射問題詳解

    這篇文章主要介紹了mybatisplus解決駝峰命名映射問題詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Java中的lambda和stream實現(xiàn)排序

    Java中的lambda和stream實現(xiàn)排序

    這篇文章主要介紹了Java中的lambda和stream實現(xiàn)排序,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09

最新評論