一、環境
本文檔中的開發環境和部署環境為:
JDK:1.6.0
Tomcat:6.0
二、簡單的例子
Servlet的編寫很簡單,你可以在Eclipse或myEclipse等工具中來完成,其初略的架構如下:
import java.io.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
......
}
1、HelloServlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("Hello Servlet");
}
}
1)將該檔案儲存成HelloServlet.java,然後編譯成對應的class檔案。
2)在Tomcat的webapps目錄下面建立目錄HelloServlet,目錄結構如下所示:
-HelloServlet
--META-INF
--WEB-INF
--classes
--lib
--web.xml
這個目錄結構是tomcat發布web應用的標準目錄結構。
classes目錄下面儲存編譯出來的class檔案;
lib目錄下面主要儲存一些需要用到的jar包,這裡用不到;
web.xml是tomcat發布web應用時的設定檔。
將上面編譯出來的class檔案拷貝到classes目錄中。
3)修改web.xml檔案
通常情況下,預設產生的web.xml檔案的內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
為了發布前邊編寫的Servlet,需要在該檔案中增加如下的內容:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
注意:在一個web.xml檔案中,可以同時發布多個Servlet,它們之間互不干涉,但是需要注意,在配置web.xml檔案的時候,不能存在同名的servlet-name。
4)啟動Tomcat,並訪問
(我是建立的目錄是WebRoot)
到此,一個簡單的Servlet成功發布了。
2、產生HTML的Servlet
注意:在產生HTML內容的時候,必須先設定content type。如代碼中的加粗一行。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
//設定content type
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String docType =
"<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.0 " +
"Transitional//EN/">/n";
out.println(docType +
"<HTML>/n" +
"<HEAD><TITLE>Hello</TITLE></HEAD>/n" +
"<BODY BGCOLOR=/"#FDF5E6/">/n" +
"<H1>Hello</H1>/n" +
"</BODY></HTML>");
}
}
三、總結
開發Servlet不是一件複雜的事情,能很快的入手,在發布的時候,需要注意配置web.xml檔案。