簡體   English   中英

Java EE中的事務和EntityManager管理

[英]Management of transactions and entityManager in Java EE

我想知道如何在Java EE中管理事務和EntityManager。

如果我的理解,一個EJB有一個EntityManager,和一個EntityManager有一個EntityTransaction。 是真的嗎

我已經閱讀了此規范http://docs.oracle.com/javaee/5/tutorial/doc/bncij.html ,有些地方我不理解。 被認為是2粒豆; 我的問題是,當bean-2的方法用“ Required”注釋時,該bean如何知道它是否存在當前事務? 所考慮的entiyManager在2個bean中是不同的,因此bean-2無法訪問該對象和當前事務,不是嗎?

在jee中,您可以將容器想像成一個了解所有情況的老大哥,在這種情況下,他可以通過在部署時對ejb進行自省,並在運行時(當您查找或查找時)在它們周圍使用代理來了解事務的進展通過注入ejb來獲得,所得到的不是ejb的實例,而是具有對該ejb的引用的代理,因此,當您調用ejb時,實際上是在調用一個最終將調用ejb實例的代理,這樣容器可以跟蹤您的交易以及所有其他事務,作為任何一位好兄弟,它可以與幾乎所有事物(包括您的所有實體經理)進行交流,以便為他們提供有關當前交易的一些背景信息。

請記住,jee的全部要點是,您的ejb無需了解任何交易或除業務以外的任何其他信息,並且可以通過容器來管理盡可能多的事情。 有一些好的信息在這里

暫無
暫無

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

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