1. 程式人生 > >手工釋出第一個Servlet程式——HelloWorld

手工釋出第一個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程式就執行成功啦ヾ(◍°∇°◍)ノ゙