關(guān)于servlet的創(chuàng)建,我們有三種方式。
我們先來看第一種,實現(xiàn)Servlet接口。
因為是實現(xiàn)servlet接口,所以我們需要實現(xiàn)接口里的方法。
下面我們也說明了servlet的執(zhí)行過程,也就是servlet的生命周期。
//Servlet的生命周期:從Servlet被創(chuàng)建到Servlet被銷毀的過程
//一次創(chuàng)建,到處服務(wù)
//一個Servlet只會有一個對象,服務(wù)所有的請求
/*
* 1.實例化(使用構(gòu)造方法創(chuàng)建對象)
* 2.初始化 執(zhí)行init方法
* 3.服務(wù) 執(zhí)行service方法
* 4.銷毀 執(zhí)行destroy方法
*/
public class ServletDemo1 implements Servlet {
//public ServletDemo1(){}
//生命周期方法:當(dāng)Servlet第一次被創(chuàng)建對象時執(zhí)行該方法,該方法在整個生命周期中只執(zhí)行一次
public void init(ServletConfig arg0) throws ServletException {
System.out.println("=======init=========");
}
//生命周期方法:對客戶端響應(yīng)的方法,該方法會被執(zhí)行多次,每次請求該servlet都會執(zhí)行該方法
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
System.out.println("hehe");
}
//生命周期方法:當(dāng)Servlet被銷毀時執(zhí)行該方法
public void destroy() {
System.out.println("******destroy**********");
}
//當(dāng)停止tomcat時也就銷毀的servlet。
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
}
創(chuàng)建servlet的第二種方法,繼承GenericServlet類,它實現(xiàn)了Servlet接口除了service的方法。
不過這種方法我們極少用
public class ServletDemo2 extends GenericServlet {
@Override
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
System.out.println("heihei");
}
}
創(chuàng)建servlet的第三種方法,也是我們經(jīng)常用的方法
繼承HttpServlet方法
這里只簡單講servlet的三種創(chuàng)建方式,關(guān)于更詳細(xì)的應(yīng)用我們后面再說。
public class ServletDemo3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("haha");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("ee");
doGet(req,resp);
}
}
|