(1) 实现servlet接口
package abc;
import javax.servlet.*;
import java.io.*;
public class hello implements Servlet{
//此函数用于初始化servlet(类似于类的构造函数)
//此函数只会被调用一次(当用户第一次访问该servlet时被调用)
public void init(ServletConfig arg0) throws ServletException {
System.out.println("initit");
}
public ServletConfig getServletConfig() {
return null;
}
//此函数用于处理业务逻辑
//当用户每访问该servlet时,都会被调用
//req:用于获得客户端(浏览器)的消息,res:用于向客户端返回消息
public void service(ServletRequest req, ServletResponse res)throws ServletException, IOException {
//从arg0中得到PrintWriter
System.out.println("serviceit"); //控件台
PrintWriter pw = res.getWriter();
pw.println("Hello world "); //页面
}
public String getServletInfo() {
return null;
}
//销毁servlet实例(释放内存)
// 1.reload 该serlvet(webApps) 2.关闭tomcat3.关机
public void destroy() {
System.out.println("destroy!");
}
}
(2)继承GenericServlet类
package abc;
import javax.servlet.GenericServlet;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.*;
public class helloGen extends GenericServlet{
//此函数用于处理业务逻辑
//当用户每访问该servlet时,都会被调用
//req:用于获得客户端(浏览器)的消息,res:用于向客户端返回消息
public void service(ServletRequest req, ServletResponse res){
// TODO Auto-generated method stub
try {
PrintWriter pw =res.getWriter();
pw.println("hello world! generic");
} catch (IOException e) {
// TODO Auto-generated catchblock
e.printStackTrace();
}
}
}
(3)继承HttpServlet类
//继承HttpServlet
package abc;
import javax.servlet.http.*;
import java.io.*;
public class helloHttp extends HttpServlet{
//处理get请求
public void doGet(HttpServletRequest req,HttpServletResponse res){
//业务逻辑
PrintWriter pw;
try {
pw =res.getWriter();
pw.println("hello Http!");
} catch (IOException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
}
//处理post请求
public void doPost(HttpServletRequest req,HttpServletResponseres){
this.doGet(req, res); //将get请求和post请求放在一起
}
}
(4)Servlet配置
<servlet>
<servlet-name> helloworld </servlet-name>
<servlet-class>test.hello </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> helloworld </servlet-name>
<url-pattern>/hello </url-pattern>
</servlet-mapping>
(4)Servlet访问