218人阅读 评论(6) 收藏 举报

一、Servlet概览

什么是Servlet疑问

(1) Servlet是提供基于协议的请求/响应服务的java类

(2) HTTP servlets是能被HTTP命令调用的servlet

二、理解servlet生命周期

Servlet生命周期通过Web容器控制


简单的概括这就分为四步:servlet类加载--->实例化--->服务--->销毁。

三、HTTP Servlet示例

(1)HTTP servlet继承自Httpservlet

(2)每一次请求都通过servlet容器调用服务方法

servlet示例:

 

  1. import javax.servlet.*;  
  2. import javax.servlet.http.*;  
  3. import java.io.*;  
  4.   
  5. public class MyServlet extends HttpServlet{  
  6.     public void service(HttpServletRequest req,HttpServletResponse res)throws  
  7. ServletException,IOException{  
  8.     //process request,generate response   
  9. }  
  10. }  

 

四、HttpServletRequest接口

HttpServletRequest接口代表了从客户来的请求处理HTTP请求的servlet示例:

 

  1. import javax.servlet.*;import javax.servlet.http.*;  
  2. import java.io.*;  
  3.   
  4. public class MyServlet extends HttpServlet{  
  5.     public void service(HttpServletRequest req,HttpServletResponse res)throws  
  6.     ServletException,IOException{  
  7.       String server=req.getServerName();  
  8.       int port=req.getServerPort();  
  9.       Enumeration headers=req.getHeaders();  
  10.       String method=req.getMethod(0);  
  11.       String query=req.getQueryString();  
  12.       String param1=req.getParameter("p1");  
  13. }  
  14. }  

 

五、HttpServletResponse接口

HttpServletResponse接口代表Servlet的响应

处理HTTP请求的servlet示例:

 

  1. import javax.servlet.*;import javax.servlet.http.*;  
  2. import java.io.*;  
  3.   
  4. public class MyServlet extends HttpServlet{  
  5.     public void service(HttpServletRequest req,HttpServletResponse res)throws  
  6.     ServletException,IOException{  
  7.       res.setContentType("text/html");  
  8.       printWriter out=res.getWriter();  
  9.       res.setBufferSize(1024);  
  10.       res.addHeader("headerName","value");  
  11.       res.sendError(404,"error message");  
  12. }  

 

我们接下来看一个简单的servlet示例:

 

  1. import javax.servlet.*;  
  2. import