Servlet基礎教程之生命週期
目錄
步驟 1 : 生命週期
一個Servlet的生命週期由 例項化,初始化,提供服務,銷燬,被回收 幾個步驟組成
步驟 2 : 例項化
當使用者通過瀏覽器輸入一個路徑,這個路徑對應的servlet被呼叫的時候,該Servlet就會被例項化
為LoginServlet顯式提供一個構造方法 LoginServlet()
然後通過瀏覽器訪問,就可以觀察到
"LoginServlet 構造方法 被呼叫"
無論訪問了多少次LoginServlet
LoginServlet構造方法 只會執行一次,所以Servlet是單例項的
|
步驟 3 : 初始化
LoginServlet 繼承了HttpServlet,同時也繼承了init(ServletConfig) 方法
init 方法是一個例項方法,所以會在構造方法執行後執行。
無論訪問了多少次LoginSerlvet
init初始化 只會執行一次
|
步驟 4 : 提供服務
接下來就是執行service()方法,然後通過瀏覽器傳遞過來的資訊進行判斷,是呼叫doGet()還是doPost()方法
在service()中就會編寫我們的業務程式碼,在本例中就是判斷使用者輸入的賬號和密碼是否正確
|
步驟 5 : 銷燬
接著是銷燬destroy()
在如下幾種情況下,會呼叫destroy()
1. 該Servlet所在的web應用重新啟動
在server.xml中配置該web應用的時候用到了
|
如果把 reloadable="false" 改為reloadable="true" 就表示有任何類發生的更新,web應用會自動重啟
當web應用自動重啟的時候,destroy()方法就會被呼叫
2. 關閉tomcat的時候 destroy()方法會被呼叫,但是這個一般都發生的很快,不易被發現。
|
步驟 6 : 被回收
當該Servlet被銷燬後,就滿足垃圾回收的條件了。 當下一次垃圾回收GC來臨的時候,就有可能被回收。
這個。。。也是不容易被觀察到的現象。
更多內容,點選瞭解: https://how2j.cn/k/servlet/servlet-lifecycle/550.html
相關文章
- java servlet 生命週期JavaServlet
- Servlet的生命週期Servlet
- React 基礎_生命週期React
- Unity基礎-指令碼生命週期Unity指令碼
- [Java基礎]物件的生命週期Java物件
- 專案管理過程之生命週期 (轉)專案管理
- Servlet基礎教程之呼叫流程Servlet
- Angualr4基礎之元件生命週期元件
- 【Java基礎】:執行緒的生命週期Java執行緒
- servlet的生命週期和工作原理介紹Servlet
- Servlet簡介及其生命週期詳解Servlet
- Android 基礎 -- Activity 生命週期實踐總結Android
- Android入門教程之Activity(生命週期,啟動...)Android
- Vue 基礎篇(四):父子元件的生命週期順序Vue元件
- vue 基礎入門筆記 09:生命週期函式Vue筆記函式
- Docker | Docker技術基礎梳理(三) - 容器生命週期管理Docker
- 生命週期
- View生命週期與Activity生命週期的關係View
- Java Servlet詳解(體系結構+註解配置+生命週期)JavaServlet
- PHP 生命週期PHP
- Flutter - 生命週期Flutter
- sessionStorag 生命週期Session
- Fragment生命週期Fragment
- Activity生命週期
- vue - 生命週期Vue
- React生命週期React
- ubuntu生命週期Ubuntu
- React 生命週期React
- vue生命週期Vue
- Salesforce 生命週期管理(一)應用生命週期淺談Salesforce
- Activity生命週期onDestroy
- Flutter -- Element生命週期Flutter
- Flutter 的生命週期Flutter
- SQL的生命週期SQL
- React-生命週期React
- vue 生命週期梳理Vue
- Laravel的生命週期Laravel
- 理解VUE生命週期Vue