servlet的编写

来源:互联网 发布:唱念爱 知乎 编辑:程序博客网 时间:2024/05/22 17:28

                          编写servlet有3中方法

第1种方法通过implements Servlet接口来实现的,此种方法需要重写4个方法
package com.tsinghua;

import javax.servlet.*;
import java.io.*;
//import javax.servlet.Servlet;
//import javax.servlet.ServletConfig;
//import javax.servlet.ServletException;
//import javax.servlet.ServletRequest;
//import javax.servlet.ServletResponse;
//import java.io.IOException;

public class hello implements Servlet{
 
 
//@throws ServletException
  //该init函数用于初始化该servlet(类似于java类的构造//函数)
//该init函数只会被调用一次,当用户第一次访问的时候调用
public void init(ServletConfig parm1) throws ServletException {
  System.out.print("init hello");
 }

 /**
 
  *用来获得servlet配置文件
  */
 public ServletConfig getServletConfig() {
  return null;
 }
 /**
 
  * @throws ServletException
 
*@throws IOException
  *该service方法用于处理业务逻辑
  *程序员应当把代码写在这里
  *当用户每次访问该servlet时,该方法都会被调用
  *ServletRequest对象 req用于获得客户端(浏览器)信息
  *ServletResponse 对象res用于向客户端(浏览器)返回信*息
  */
public void service
(ServletRequest req, ServletResponse res) throws ServletException, IOException {
  //System.out.println()方法用于向控制台输出
  System.out.println("service method");
  //PrintWriter对象用于向浏览器输出
  PrintWriter pw=res.getWriter();
  pw.println("hello servlet");
 }

 
 public String getServletInfo() {
  return "";
 }

 /**
 
  *销毁servlet对象(释放内存)
  *下面3种情况会调用该方法
  *1.reload 该servlet 所在的web应用
  *2.关闭servlet服务器(tomcat)
  *3.关机
  */
 public void destroy() {
  System.out.println("destroy!");
 }
 }


这是第2种编写servlet的方法,通过extends GenericServlet类来实现,只需重写service方法,在方法体内对代码进行try-catch异常处理
package com.tsinghua;

import javax.servlet.*;

import java.io.*;

public class HelloGenericServlet extends GenericServlet{
 
 public void service (ServletRequest req,ServletResponse res){
  
  try{
   
   PrintWriter pw=res.getWriter();
   
   pw.println("hello generic servlet!");
   
  }catch(Exception e){
   
    e.printStackTrace();
  } 
 }
}


这是第3种编写servlet的方法,通过extends HttpServlet类来实现,一般需重写doPost方法和doGet方法,在方法体内对代码进行try-catch异常处理
package com.tsinghua;

import javax.servlet.http.*;

import java.io.*;

public class HelloHttpServlet extends HttpServlet{
 
  public void doPost(HttpServletRequest req,HttpServletResponse res){
   
   try{
    
    PrintWriter pw=res.getWriter();
   
    pw.println("hello Http Servlet!");
   
   }catch(Exception e){
   
    e.printStackTrace();
   }
  }
   
  public void doGet(HttpServletRequest req,HttpServletResponse res){
   
   this.doPost(req,res);
   
  }
}

原创粉丝点击