初識Servlet

導語

現在做android開發也有三年了,但是感覺這個工作年限找工作很尷尬啊,有點兒低不成高不就的感覺,所以就想在現有的基礎上去學習點兒什麼別的技術,一個是找工作容易,一個是身價還能高點兒,還有就是爲了以後能走上管理崗位積蓄能量,反正不管怎樣,多學點兒東西總沒有壞處(廢話有點兒多…)。
好了言歸正傳,從今天開始,我打算學習一下Java後臺,同時也會把學習筆記記錄下來分享給大家,也給自己做個備份。

Servlet介紹

1.servlet介紹
2.servlet工作原理

我的第一個servlet

今天我要實現的是一個很簡單的用瀏覽器請求一個鏈接,然後返回一個Hello World(不用MyEclipse IDE開發)。

前置工作

1.安裝Tomcat
2.在Tomcat的安裝目錄的webapps下創建一個文件夾(隨意命名),我的就叫Test了,在這個文件夾下,創建一個WEB-INF的文件夾(注意:這個文件夾必須這麼命名),然後在WEB-INF文件夾下創建命名爲classes,和libs的文件夾,然後在從ROOT下面拷貝一個web.xml文件。如圖:

這裏寫圖片描述

正式開工

1.先編寫一個實現Servlet的java類,代碼如下:(這個類需要servlet-api.jar包,在安裝的Tomcat的libs目錄下能找到,拷貝到Eclipse的libs文件夾下)

public class WebTest01 implements Servlet {

    /**
     * 初始化,只會調用一次,除非servlet關閉或者reload
     */
    public void init(ServletConfig arg0) throws ServletException {
        System.out.println("init");
    }

    public ServletConfig getServletConfig() {
        return null;
    }

    /**
     * 用於業務邏輯處理 
     * 被調用多次,用戶沒請求一次,就會調用一次 
     * req 獲取請求的參數 
     * res 返回的參數
     */
    public void service(ServletRequest request, ServletResponse response)
            throws ServletException, IOException {
        System.out.println("service");
        //這兩句是輸出Hello World到瀏覽器上
        PrintWriter pwWriter = response.getWriter();
        pwWriter.print("hello world");
    }

    public String getServletInfo() {
        return null;
    }

    /**
     * 銷燬 
     * 1.reload 該servelet
     * 2.關閉tomcat
     * 3.關機
     */
    public void destroy() {
        System.out.println("destroy");
    }

}

2.將你的包名的文件夾整個拷貝到classes文件夾下,如圖:
這裏寫圖片描述

3.然後我們用命令行編譯這個類,生成.class文件:

  1. windows + R,輸入cmd,回車
  2. 你Tomcat的安裝的盤符 + 冒號 ,回車
  3. 進入到你的新建的java類的文件夾下去(用cd進入文件夾,一層一層進)
  4. 編譯:正常編譯用javac + 類名.java,但是這個類我們要把servlet-api.jar引進去,所以使用我們用javac -cp + 空格 + jar的路徑\jar的名字 + 分號 + 空格 + 類名.java,如圖:
    這裏寫圖片描述
    編譯完成,就會多一個.class文件,
    這裏寫圖片描述

圖中的我的jar包的路徑不是我們新建的Test文件夾下的WEB_INF下的lib文件夾,因爲我的Tomcat安裝在了D盤的一個帶(x86)的文件夾中,所以編譯的時候出錯了,我就換到了E盤的javaweb_jar文件夾下了。

  1. 配置servlet
    打開我們的Test下的WEB-INF下的web.xml文件,加上如下代碼:

    <servlet>
             <!--這個名字隨便取-->
            <servlet-name>hello</servlet-name>
            <!--這個一定要是包名+ 類名(不加.java)-->
            <servlet-class>com.example.test.WebTest01</servlet-class>
    </servlet>
    
    <!-- Define the Manager Servlet Mapping -->
    <servlet-mapping>
            <!--這個必須和上面的servlet-name一致-->
            <servlet-name>hello</servlet-name>
            <!--在瀏覽器拼連接時用它去請求我們的java類-->
            <url-pattern>/index</url-pattern>
    </servlet-mapping>
    

    到這裏,我們的代碼的工作基本上就結束了,下面就是見證奇蹟的時刻了。
    打開Tomcat的bin目錄,雙擊startup.bat文件打開Tomccat,爲了驗證我們的Tomcat是否正常運行,在瀏覽器的地址欄中輸入:http://127.0.0.1:8080/ 或者 http://localhost:8080/,如果能出現下圖就證明Tomcat正常工作了。
    這裏寫圖片描述

想請求我們剛纔配置的servlet輸入: htttp://localhost:8080/Test/index ,結果如圖:
這裏寫圖片描述

成功的達到了我們的預期結果。

servlet的工程下載

後續將會繼續更新,敬請期待。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章