離開工具自己手寫一個servlet

手寫一個servlet可以幫助我們對於sevlet底層的實現有一個基本的認識,對於其目錄結構有一個深刻的瞭解,有助於我們開發中的調試。
這裏寫圖片描述
寫個需求,利用Servlet網頁動態獲取當前時間。

本地Servlet的實現步驟:
1、在Tomacat 的webapp下面建立一個web應用,我們起名字叫做muniu,在該文件夾下。

2、在muniu文件夾下面建立一個文件夾WEB-INF,在WEB-INF裏面創建一個web.xml。(該web.xml可以從apache-tomcat-8.0.43\webapps\ROOT\WEB-INFF中拷貝)

3、根據Servlet規範部署Servlet.
在web.xml文件中添加以下代碼進行部署。同時更改掉其中的編碼機encoding

<!--將Servlet部署到web.xml-->
<servlet>
<!--Servlet的名字(可以自定義,一般與Servlet的名字一致)-->
      <servlet-name>MuNiu</servlet-name>
<!--全名(包名+類名)-->
      <servlet-class>com.sky.servlet.MuNiu</servlet-class>
</servlet>
<servlet-mapping>
<!--與上面的servlet-name保持一致-->
        <servlet-name>MuNiu</servlet-name>
<!--我們訪問該servlet的資源名-->
        <url-pattern>/MuNiu</url-pattern>
</servlet-mapping>

4、在WEB-INF目錄下建立一個classes文件夾用來存放sevlet(servlet是一個java程序)

package com.sky.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class MuNiu extends HttpServlet
{
    //啓動函數
    public void init(ServletConfig servletConfig) throws ServletException{

    }

    public ServletConfig getServletConfig(){
        return null;
    }
    //交互服務
    public void service(ServletRequest sq,ServletResponse sp) throws ServletException,IOException{

        sp.getWriter().println("Current Time is"+new java.util.Date());
    }

    public java.lang.String getServletInfo(){
        return null;
    }
    //摧毀函數
    public void destroy(){

    }
}

5、編譯servlet(javac -d . MuNiu.java)加上-d .可以講MuNiu.class編譯到對應的包目錄下:
這裏寫圖片描述

6、啓動tomcat

7、在瀏覽器中啓動查詢:
這裏寫圖片描述

以上是繼承Servlet接口實現的Servlet,實際我們的開發中,90%是根據繼承HttpServlet來寫的。
這裏寫圖片描述
、===========動態網頁的特點:===================、
動態網頁並不是服務器上存在的網頁文件,而是當我們請求時,服務器才動態組裝返回的一個網頁。

動態網頁的內容往往是存放在數據庫中,根據用戶發出的不同請求而提供個性化的網頁內容。
這裏寫圖片描述

發佈了47 篇原創文章 · 獲贊 13 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章