簡體   English   中英

有了 JPA,是否還需要使用 EJB session bean?

[英]with JPA, is there still a need to use EJB session beans?

使用 session bean 有哪些用例? 當請求需要“粘性”時,我個人更喜歡在 web 輪胎中保持 session 狀態。謝謝。

請注意,某些 JPA 概念與其他 JavaEE 概念相關聯,在某些情況下還與 EJB 相關聯。 具體來說,容器管理的 EntityManagers 通過@PersistenceContext注入

  • @PersistenceContext(type = EXTENDED) EntityManager em;
    • EntityManager 鏈接到@Stateful session bean 並且只能由它使用
  • @PersistenceContext(type = TRANSACTION) EntityManager em;
    • EntityManager 鏈接到當前運行的 JTA 事務的 scope 並且只能在其中使用

在第一種情況下,EJB 是必需的。 在第二種情況下,EJB 很適合自動處理事務管道。

session bean 提供的所有服務(聲明式事務、聲明式安全、異步方法、計時器等)。 如果您不需要任何這些服務,那么您就不需要 session 個 bean。

主要用例是避免編寫 JPA 所需的繁瑣冗長的事務管理代碼。

對於 EJB,這幾乎總是不可見的,最多只是一個額外的注釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM