擴展對Java EE 6 中託管Bean 的理解
Java EE 6 規範包含大量用於處理託管Bean 的註釋,包括:
- @javax.annotation.ManagedBean
- @javax.inject.Named
- @javax.faces.ManagedBean
@javax.faces.ManagedBean
🎜> >探索託管領域Beans
-
JSF 託管Bean: 由JavaServer Faces (JSF) 規格提供,這些Bean 支援JSF 頁面的Bean 建立和依賴項注入。與 CDI bean 相比,它們提供的功能有限,應該逐步淘汰,以支援後者。
-
CDI Bean:隨 CDI 一起引入,這些 bean 提供高級功能,例如攔截器、事件處理、以及帶有限定符的依賴注入。它們代表了 Java EE 6 及更高版本中的主要託管 Bean 機制。
-
EJB:Enterprise JavaBeans (EJB) 是 Java EE 中的一個基本概念,提供事務性、分散式和有狀態/無狀態服務。它們提供了 CDI beans 不可用的功能,例如鈍化和計時器。
注入最佳實踐
可以透過以下註解實現託管Bean 的注入:
-
@Inject:>@Inject: 用於注射注入CDI bean 和EJB
-
@EJB: 專門用於將EJB 注入其他託管bean
- @ManagedPropertyd Java 中仍支援舊的註解EE 6,但建議使用@Inject
選擇最佳託管Bean 類型
使用哪種託管Bean 類型的決定取決於應用程式的特定要求:
- CDI Bean: 通用託管的預設選擇beans,提供廣泛的功能和靈活性。
- EJB:對於事務管理、鈍化和計時器等功能至關重要。
以上是在 Java EE 6 中您應該選擇哪種託管 Bean 類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!