六種常用的事務
J2EE 應用程序中有六種常用的范圍類型:
Transaction(事務)
Request(請求)
HTTP session(HTTP 會話)
Application(應用程序)
Global(全局)
None(無)
事務范圍覆蓋一個事務的整個生命周期。這個范圍開始于一個事務的開始。這時會創建一個惟一的范圍鍵。這個范圍結束于提交或回滾事務時。這時,與事務范圍相關聯的所有對象被自動釋放回它們的池。
請求范圍與一個 servlet 請求的范圍對應;在容器調用 servlet 來處理請求之后,請求范圍立即開始。同時會創建一個惟一的范圍鍵。在 servlet 完成處理之前請求范圍結束。這時,與這個范圍相關聯的所有對象被自動釋放回它們的池。
HTTP 會話范圍與一個 HTTP 會話的生命周期對應。它從創建一個新的 HttpSession 時開始。這時會創建一個惟一的范圍鍵。它結束于會話被銷毀或過期時。這時,與這個范圍相關聯的所有對象被自動釋放回它們的池。
應用程序范圍覆蓋應用程序的整個生命周期。它開始于把一個應用程序部署到應用服務器時。這時會創建一個惟一的范圍鍵。這個范圍結束于應用程序停止運行或從應用服務器中刪除時。這時,與這個范圍相關聯的所有對象被自動釋放回它們的池。
全局范圍是最大的范圍。采用這種范圍的對象不會被釋放。
無范圍用于不使用對象池的對象。采用這種范圍的對象每次都通過自己的對象構造函數來創建,并由 Java 垃圾收集器釋放。對象管理器根本不管理它們。
本文由用戶 gfwang 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!