J2EE應用程序中的六種範圍類型

學識都 人氣:6.02K

J2EE應用程序中有哪些範圍類型?J2EE應用程序的範圍類型是什麼?下面隨本站小編一起來學習吧!

大多數服務器端 J2EE 應用程序中有六種常用的範圍類型:

Transaction(事務)

Request(請求)

HTTP session(HTTP 會話)

Application(應用程序)

Global(全局)

None(無)

事務範圍

事務範圍覆蓋一個事務的整個生命週期。這個範圍開始於一個事務的開始。這時會創建一個惟一的範圍鍵。這個範圍結束於提交或回滾事務時。這時,與事務範圍相關聯的所有對象被自動釋放回它們的池。

請求範圍

請求範圍與一個 servlet 請求的範圍對應;在容器調用 servlet 來處理請求之後,請求範圍立即開始。同時會創建一個惟一的'範圍鍵。在 servlet 完成處理之前請求範圍結束。這時,與這個範圍相關聯的所有對象被自動釋放回它們的池。

HTTP 會話範圍

HTTP 會話範圍與一個 HTTP 會話的生命週期對應。它從創建一個新的 HttpSession 時開始。這時會創建一個惟一的範圍鍵。它結束於會話被銷燬或過期時。這時,與這個範圍相關聯的所有對象被自動釋放回它們的池。

應用程序範圍

應用程序範圍覆蓋應用程序的整個生命週期。它開始於把一個應用程序部署到應用服務器時。這時會創建一個惟一的範圍鍵。這個範圍結束於應用程序停止運行或從應用服務器中刪除時。這時,與這個範圍相關聯的所有對象被自動釋放回它們的池。

全局範圍

全局範圍是最大的範圍。採用這種範圍的對象不會被釋放。

無範圍

無範圍用於不使用對象池的對象。採用這種範圍的對象每次都通過自己的對象構造函數來創建,並由 Java 垃圾收集器釋放。對象管理器根本不管理它們。