本文转载自http://www.cnblogs.com/albert1017/archive/2012/08/11/2633555.html
//使用实现servlet接口的方式来开发
package com.albert;
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 {
/**
* Method init
*该函数用于初始化该servlet(类似于类的构造函数)
*该函数只会被调用一次(当用户第一次访问该servlet时被调用)
* @param parm1
*
@throws ServletException
*
*/
public void init(ServletConfig parm1) throws ServletException {
// TODO: 在这添加你的代码
System.out.println("init servlet.");
}
/**
* Method getServletConfig
*
*
* @return
*
*/
public ServletConfig getServletConfig() {
// TODO: 在这添加你的代码
return null;
}
/**
* Method service
*用于处理业务逻辑
*程序员应该把业务逻辑代码写在这里
*当用户每访问一次该servlet时都会被调用
* @param req用于获得客户端信息
* @param res用于向客户端返回信息
*
@throws ServletException
@throws IOException
*
*/
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
// TODO: 在这添加你的代码
//要返回信息,分为以下几步
//首先从res得到PrintWriter
System.out.println("service() run.");
PrintWriter pw = res.getWriter();
pw.println("Hello World!");
}
/**
* Method getServletInfo
*
*
* @return
*
*/
public String getServletInfo() {
// TODO: 在这添加你的代码
return "";
}
/**
* Method destroy
*销毁servlet实例(释放内存)
*有三种情况被调用:
*1.reload该servlet(webApp)
*2.关闭tomcat
*3.关机
*/
public void destroy() {
// TODO: 在这添加你的代码
System.out.println("destroy run");
}
}
2.通过继承GenericServlet开发
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
//通过继承GenericServlet开发
package com.albert;
import javax.servlet.GenericServlet;
import javax.servlet.*;
import java.io.*;
public class HelloGeneric extends GenericServlet{
//重写service方法即可
public void service(ServletRequest req,ServletResponse res){
//返回hello world generic
try{
PrintWriter pw = res.getWriter();
pw.println("hello world!generic");
}
catch(Exception e){
e.printStackTrace();
}
}
}
3.通过继承HttpServlet的方法开发
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
//通过继承HttpServlet的方法开发
package com.albert;
import javax.servlet.http.*;
import java.io.*;
import javax.servlet.*;
public class HelloHttp extends HttpServlet{
//处理get请求
public void doGet(HttpServletRequest req,HttpServletResponse res){
//处理业务逻辑
try{
PrintWriter pw = res.getWriter();
pw.println("Hello World! Http");
}
catch(Exception e){
e.printStackTrace();
}
try
}
//处理post请求
public void doPost(HttpServletRequest req,HttpServletResponse res){
//一样处理
this.doGet(req,res);
}
}