手工發佈第一個Servlet程序——HelloWorld

本文介紹不借助IDE集成開發環境,通過手工的方式編寫和發佈Servlet程序。
環境配置:JavaSDK+Tomcat+Servlet-api.jar包。
Servlet-api.jar包在 Tomcat的安裝目錄/lib目錄下,將該路徑加入classpath變量中。
我的tomcat安裝目錄是D:\Java\tomcat

一、編寫代碼

1、在D\Java\tomcat\webapps目錄下新建一個HelloWorld文件夾。

2、在D\Java\tomcat\webapps\HelloWorld目錄下新建兩個子目錄,爲test和WEB-INF,其中test存放源碼,WEB-INF是JavaWEB應用的安全目錄。

3、在D\Java\tomcat\webapps\HelloWorld\WEB-INF目錄下新建兩個子目錄,爲classes和lib。

4、在D\Java\tomcat\webapps\HelloWorld\test目錄下建立HelloWorld.java文件,代碼如下:

package test;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class HelloWorld extends HttpServlet {
    private static final long serialVersionUID = 1L;

    public HelloWorld() {
        super();       //調用父類的構造方法
    }

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

    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out=response.getWriter();
        out.println("<b>Hello World!</b>");    //向客戶端輸出Hello World
    }
}

注意:Java源碼必須放在包目錄下

二、編譯Servlet

1、在windows控制檯程序,進入D\Java\tomcat\webapps\HelloWorld目錄。

2、輸入如下命令:(已配置classpath變量)
javac -d WEB-INF\classes test\HelloWorld.java
若沒有配置,則輸入
javac -classpath .;….\lib\servlet-api.jar -d WEB-INF\classes test\HelloWorld.java

其中-classpath參數用來配置環境變量classpath的值, . 表示當前目錄,..表示上一級目錄。-d參數用來設置編譯後classes文件的目錄,編譯時也可不加參數,但一定要將編譯後的.class文件放在WEB-INF目錄下的classes文件夾裏(連同所在的包)。

三、部署Servlet

1、在D\Java\tomcat\webapps\HelloWorld\WEB-INF目錄下建立一個web.xml文件,爲編寫的Servlet配置訪問路徑。
代碼如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    id="WebApp_ID" version="3.0">

    <!-- 定義Servlet本身的屬性 -->
        <!-- 聲明Servlet的名稱 -->
        <servlet-name>HelloWorld</servlet-name>
        <!-- 聲明Servlet所對應的類名 -->
        <servlet-class>test.HelloWorld</servlet-class>
    </servlet>

    <!-- 用於進行Servlet映射 -->
    <servlet-mapping>
        <servlet-name>HelloWorld</servlet-name>
        <!-- 用於指明Servlet的訪問地址 -->
        <url-pattern>/helloworld</url-pattern>
    </servlet-mapping>
</web-app>

在Servlet3.0規範之前需要編寫上述web.xml文件對Servlet進行配置。在Servlet3.0版本規範中支持註解進行配置,即在源代碼中加入註解
@WebServlet(urlPatterns={“/helloworld”})

現在我們啓動Tomcat服務器,在瀏覽器地址欄輸入
http://localhost/HelloWorld/helloworld
鏈接中localhost後的HelloWorld是項目所在的目錄,/helloworld是web.xml文件中(url-pattern)標籤裏的內容。

這裏寫圖片描述

至此,我們的第一個Servlet程序就運行成功啦ヾ(◍°∇°◍)ノ゙

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