servlet瞭解

含義

servlet 是用來擴展web服務器功能的組件規範,可以實現請求某個功能並響應一個動態頁面,而不僅僅是靜態頁面了。

編寫

寫一個java類,實現servlet接口或者繼承httpservlet重寫service方法,在service中寫業務邏輯,

編寫servlet需要注意中文的編碼問題,因爲web服務器默認是採取iso-8859-1來編碼的,我們需要設置在接受數據和發送數據時設置一下約定好的編碼格式

通過reques對象來獲取數據,通過response對象來封裝響應內容。

配置

在web.xml中配置好servlet的路徑和類的對應關係,這樣web服務器調用的時候就根據路徑來調用相對應的servlet。

生命週期

servlet 1.調用構造器實例化 2.調用init函數(只調用一次) 3.調用service函數 4.調用destory函數(只調用一次)然後銷燬

servlet只有一個實例除非容器關閉 纔會銷燬,因此存在線程安全問題

異常

servlet可以拋出servletException讓容器來處理

<!-- 配置異常處理頁面 -->
<error-page>
    <exception-type>javax.servlet.ServletException</exception-type>
<location>/error.jsp</location>
</error-page>

過濾器

是在請求調用servlet之前先調用過濾器來進行攔截處理

step1.寫一個java類,實現Filter接口。

step2.在doFilter方法裏面,實現攔截處理邏輯。

step3.配置過濾器。(web.xml)

FilterChain(過濾器鏈):

 如果調用了該對象的doFilter方法,表示繼續向後調用;否則,中斷請求,返回處理結果。

監聽器

step1.寫一個java類,依據監聽的事件類型選擇實現相應的 監聽器接口。

step2.在接口方法當中,實現監聽處理邏輯。

step3.配置監聽器。(web.xml)



jsp 是動態頁面技術規範,內容包括html和java代碼 ,但是本質上jsp就是一個servlet,web容器最終會將jsp轉化爲servlet

html(css,js) ----> 在service方法裏面,使用
                out.write輸出。
<%    %> ---->  在service方法裏面,照搬。
<%=   %> ---->  在service方法裏面,使用                 out.print輸出。
<%!   %> ---->  添加新的屬性或者方法。



注:dao裏面封裝了數據庫訪問的方法,增刪改查,一般在service層調用

       DButils封裝了獲取數據庫連接和關閉連接的方法,一般在dao中調用

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