2

JTAH でトランザクションを使用することは、セッション スコープに関して をibernate使用することと対照的であると言うのは正しいですか? 私が収集できたものから、トランザクションのセッションスコープはトランザクションです(主にこのリンクに基づいています)一方、パターンではセッションのスコープはリクエストであり、複数のトランザクションを含めることができます。Open-Session-In-View
JTAOpen-Session-In-View

最初に理解し、次に を使用する際のセッション処理の責任者が「誰」であるかを確認するよう求めていJTAます。
現在、 を使用する場合、セッションの開始、取得、および終了を処理Open-Session-In-Viewするクラスがあります ( 経由)。 使用に切り替えると、上記のセッション アクションが処理されますか? (おそらく私の呼び出し userTransaction.begin,userTransaction.rollback の派生物として)HibernateUtilThreadLocal<Session>
JTAHibernate

ところで、トランザクションJTAを調整する必要があるため、これは一般的なベストプラクティスの「JTA を使用する」質問ではありません。Hibernate JMSEHCache

イッタイ

4

1 に答える 1

0

JTA を使用している場合は、JTA マネージャー (通常は EJB3 コンテナー) がトランザクションを担当します。

通常、同じ古き良き open-transaction-in-view モデルが使用されますがUserTransaction、たとえば、SWING クライアントを使用すると、複数のリクエストにまたがる長期的なトランザクションを持つことができます (一般的には悪い習慣ですが)。

ところで、Hibernate JMS と EHCache の間でトランザクションを調整する必要があるため、JTA について尋ねているので、これは一般的なベスト プラクティスの「JTA を使用する」という質問ではありません。

幸運を。外部トランザクション マネージャー (Atomikos を使用しました) + Spring は、JBoss よりも私のニーズに適していることがわかりました。

于 2011-02-21T23:07:05.573 に答える