Servlet基礎之實現第一個servlet程式
實現第一個Servlet程式
1. 建立servlet檔案
在某個盤下建立一個新的資料夾,(資料夾名字自己開心就好,也可以是原來命名好的資料夾)在此目錄下建立一個XXXX.java檔案,內容如下
packagejava_web;//這是包名,也就是你建立的資料夾的名字,從大到小,我是直接在D盤下建立的java_web的資料夾,所以包名就直接是java_web
importjava.io.*;
importjavax.servlet.*;
publicclass HelloWorldServlet extends GenericServlet{
public void service(ServletRequestrequest,ServletResponse response) throws ServletException,IOException{
//得到輸出流PrinterWriter物件,Servlet使用輸出流來產生響應
PrintWriter out = response.getWriter();
//使用輸出流物件向客戶端傳送字元
out.println("XXXXX");//XX表示在客戶端顯示的內容
}
}
2. 編譯servlet
Cmd進入你的XXXX.java檔案所在的目錄,然後編譯你的XXXX.java檔案,編譯好後,會有一個XXXX.class 檔案生成。
Ps:cd 檔名是進入資料夾看到錯誤先別急,先看下錯誤提示是什麼
Javax.servlet.*不存在,這是因為Java編譯器在classpath 的環境變數中找不到javax.servlet.*包,因此想要編譯servlet,需要將servlet相關的jar包所在的目錄新增到classpath環境變數中。
3. 找到servlet的jar包
由於servlet4. 引入servlet的jar包
命令列視窗,設定set classpath 如下圖,並編譯.java檔案
成功編譯後
5. 將編譯後的.class 檔案新增到伺服器
在tomcat的webapp下建立一個資料夾(名字開心就好,該名字為web應用的名稱),在此資料夾下建立WEB-INF\classes目錄,將上面編譯的class拷貝到classes目錄下(將他的全部上級目錄拷貝過去),如下圖6. 建立xml配置檔案
在WEB-INF中,編寫一個web.xml (不知道怎麼寫就參考Tomcat安裝目錄下的web.xml 檔案,該檔案在example/WEB-INF子目錄下),以下是我們自己的xml檔案配置程式碼
<?xmlversion="1.0" encoding="UTF-8"?>
<web-appxmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<servlet>
<servlet-name>HelloWorldServlet</servlet-name>
<servlet-class>java_web.HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/HelloWorldServlet</url-pattern>
</servlet-mapping>
</web-app>
Ps:<servlet>用於註冊Servlet
<servlet-name>HelloWorldServlet</servlet-name>指定servlet的名稱為HelloWorldServlet,你也可以改成其他的
<servlet-class>java_web.HelloWorldServlet</servlet-class>指定servlet完整的類名,要和你編寫的.java 檔案的類名相同
<servlet-mapping>用於對映servlet對外訪問虛擬路徑,它的<servlet-name>名字必須和<servlet>中的<servlet-name>相同
<url-pattern>是指定該servlet的虛擬路徑,該路徑以正斜槓(/)開頭,表示當前web應用程式的根目錄
7. 執行伺服器,檢查結果
啟動tomcat 的伺服器,在瀏覽器地址中輸入http://localhost:8080/chapter03/HelloWorldServlet訪問HelloWorldServlet,顯示結果如下:
總結:在這個過程中,我遇見了一些問題:
1:tomcat無法啟動,出現閃退的情況
2:Java的環境配置出現了問題,導致無法編譯
.java檔案中的程式碼敲錯,敲得時候太快,沒注意區分大小寫
告訴自己,配置的過程中要仔細,編寫的過程中也要細心。
後來自己重新配置了tomcat,和java tomcat 中安裝環境配置與java的jdk和jre的環境配置