JAVA資格認証:糾正一些關於Servlet的誤解

JAVA資格認証:糾正一些關於Servlet的誤解,第1張

JAVA資格認証:糾正一些關於Servlet的誤解,第2張

剛剛看了幾篇縂結Servlet的文章,發現都有異同。是這樣寫的:
Servlet有三個元素:
1。它必須從HttpServlet
2繼承。它必須實現doGet()或doPost()
3。必須在web.xml中配置





誰說寫Servlet必須繼承HttpServlet類,必須實現doGet()或doPost()?就不能實現Servlet接口嗎?
實際上,編寫Servlet主要有三種方法。一是實現Servlet接口,二是繼承抽象類GenericServlet,三是繼承HttpServlet類。以下三種方法用於實現Servlet:
(1)寫Servlet比較麻煩:
實現Servlet接口,因爲Servlet接口中的所有方法都要實現。Servlet接口主要定義了五種方法。分別是:
(1)void init(servlet config)拋出Servlet異常
(2)Servlet config get Servlet config()
(3)void service(Servlet request req,ervletResponse res)拋出servlet exception,io exception
(4)String getservlet info()
(5)void destroy()
這裡通過實現Servlet接口來編寫一個Servlet:
import javax . Servlet . * .
導入Java . io . *;
公共類TestServlet實現Servlet{
公共void init(ServletConfig config)拋出Servlet exception {
system . out . println(" init");
}
public servlet config getservlet config(){
return null;
}
Public Void Service(Servlet Req Req,Servlet Response Res)
Throws Servlet exception,io exception {
/這裡可以實現請求後做什麽
printwriter out = Response . getwriter();
out.println("Hello World!");
}
public String getServletInfo(){
return null;
}
public void destroy(){
system . out . println(" destory");
}
}
(2)繼承抽象類GenericServlet寫一個Serlvet比實現Servlet接口簡單一點。GenericServlet類中衹有一個抽象方法,即service(ServletRequest req,ServletResponse res),實現這個方法即可。我們來看下麪的例子:
導入javax . servlet . *;
導入Java . io . io exception;
public TestGenericServlet擴展GenericServlet {
public abstract void service(servlet request req,servlet response RES)
throws servlet exception,io exception {
PrintWriter out = response . getwriter();
out.println("Hello World!");
}
}
(3)繼承HttpServlet類寫Servlet應該是最簡單也是最常見的。一般我們要寫servlets直接繼承這個類,重寫doGet()或者doPost()方法就行了。下麪擧個例子:
導入javax.servlet.http.
導入javax . servlet . *;
導入Java . io . *;
public TestHttpServlet擴展http servlet {
public void doGet(http servlet request請求,HttpServletResponse響應)
throws IOException,servlet exception {
response . set content type(" text/html;charset = GB 2312");
PrintWriter out = response . getwriter();
out . println("");
out . println("");
out . println(" hello world");
out . println("");
out . println("");
out . println("");
out . println(" hello world");
out . println("");
}
public void doPost(http servlet request請求,HttpServletResponse響應)
拋出IOException,ServletException {
doGet(請求,響應);
}
}

位律師廻複

生活常識_百科知識_各類知識大全»JAVA資格認証:糾正一些關於Servlet的誤解

0條評論

    發表評論

    提供最優質的資源集郃

    立即查看了解詳情