实现Servlet方法的3个实例

编写Servlet主要有三种方法,一是实现Servlet接口,二是继承抽象类GenericServlet,三是继承HttpServlet类。

(一)要从实现Servlet接口来编写Servlet是比较麻烦的,因为必须实现Servlet接口中的所有方法,Servlet接口主要定义了五个方法,它们分别为:

(1)void init(ServletConfig config) throws ServletException
(2)ServletConfig getServletConfig()
(3)void service(ServletRequest req,ervletResponse res) throws ServletException,IOException
(4)String getServletInfo()
(5)void destroy()

下面用实现Servlet接口的方法编写Servlet:

import javax.servlet.*; 
import java.io.*; 
public class TestServlet implements Servlet{ 
    public void init(ServletConfig config) throws ServletException{ 
        System.out.println("init"); 
    } 
    public ServletConfig getServletConfig(){ 
        reture null; 
    } 
    public void service(ServletRequest req,ServletResponse res)throws ServletException,IOException{ 
        //这里可以实现请求后要做的内容 
        PrintWriter out = response.getWriter(); 
        out.println("Hello World!"); 
    } 
    public String getServletInfo(){ 
        return null; 
    } 
    public void destroy(){ 
        System.out.println("destory"); 
    } 


(二)继承抽象类GenericServlet编写Serlvet,这个相对比实现Servlet接口要容易一点,GenericServlet类中只有一个抽象方法,即service(ServletRequest req, ServletResponse res),只要实现这个方法就行了,下面看例子:

import javax.servlet.*; 
import java.io.IOException; 

public TestGenericServlet extends GenericServlet{ 
    public abstract void service(ServletRequest req,ServletResponse res)throws ServletException,IOException{ 
        PrintWriter out = response.getWriter(); 
        out.println("Hello World!");                     
    } 
}

(3)继承HttpServlet类编写Servlet应该是最容易的,而且是最常见的,我们一般要编写Servlet直接继承这个类就行了,重写 doGet()或者doPost()方法即可,下面看例子:

import javax.servlet.http.*; 
import javax.servlet.*; 
import java.io.*; 

public TestHttpServlet extends HttpServlet{ 
    public void doGet(HttpServletRequest request, HttpServletResponse response)throws IOException, ServletException { 
        response.setContentType("text/html;charset=gb2312"); 
        PrintWriter out = response.getWriter(); 
        out.println("<html>"); 
        out.println("<head>"); 
        out.println("<title>HelloWorld</title>"); 
        out.println("</head>"); 
        out.println("<body bgcolor=\"white\">"); 
        out.println("<hr>"); 
        out.println("HelloWorld"); 
        out.println("</body></html>"); 
     } 
}

你可能感兴趣的:(html,servlet)