servlet基礎

1.介紹Servlet的基本概念,特點

  1)它是由 java 編寫的、服務端程序。

  2)基於Http協議的,運行在web服務器內的。Servlet和CGI都是運行在Web服務器上,用來生成Web頁面。

  3)沒有 main 方法。是接受來自網絡的請求(form表單,以及其他的請求),並對不同請求作出不同的響應。

  4)由容器管理和調用。這個web容器可以控制Servlet對象的生命週期,控制請求由Servlet對象處理。


2.分析Servlet類

  Servlet的繼承關係

    javax.servlet.Servlet接口 --> GenericServlet抽象類 --> HttpServlet  -->  自定義類

    必須重載doGet()或者doPost()方法

public class CartServlet extends HttpServlet{
    //overside
	public void init() throws ServletException {
	//put your code
	}
	//overside
	public void doGet(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException {
					//put your code
	}
        //overside
	public void doPost(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException {
	//put you code
    }
}


3.容器怎麼調用對應Servlet

    配置文件 web.xml 中Servert標籤可以根據配置一一對應找到對應的Servlet類,

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <servlet-name>CartServlet</servlet-name>
    <!-- 加入包名 -->
    <servlet-class>servlet.CartServlet</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>CartServlet</servlet-name>
    <!-- 以/開始-->
    <url-pattern>/servlet/CartServlet</url-pattern>
  </servlet-mapping>
</web-app>


如果不喜歡web.xml的形式

可以採用在Servlet類中增加註解的方法,去註冊Servlet類

@WebServlet(name = "CartServlet", urlPatterns = {"/servlet/CartServlet"})


4.Servlet生命週期的三個核心方法分別是 init() , service() 和 destroy()。

    每個Servlet都會實現這些方法,並且在特定的運行時間調用它們。

init() 方法:Servlet實例的生命週期裏只調用一次

service()方法:web容器調用Servlet的service()方法來處理每一個請求,但是我們不用重載這個方法

destory()方法:終結Servlet。可以再Servlet的生命週期內關閉或者銷燬一些文件系統或者網絡資源,在Servlet的生命週期裏只能調用一次




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章