共有データベースで複数のSpring-Dataアプリケーションを使用する方法

フィリップ・ザ・グレート

spring-dataを使用してデータベースにアクセスするSpringアプリケーションがあります。現在、データにアクセスするためにHibernate / JPAのみを使用して同じデータベースを更新する必要がある別のアプリケーションもあります。

APP2からデータを更新すると、基になるEntityManagerが更新されないため、spring-dataを介してAPP1にデータが表示されません。

この機能を提供するためのすぐに使えるソリューションはありますか?明らかに、私が考えることができるのは:

  • これらの操作を提供するための共通のRESTレイヤーを作成します
  • Hazelcast、Redisなどの共有分散キャッシュ

APP1をリファクタリングする必要があるため、最初のオプションは避けたいと思います。2番目がどのように機能するかはわかりません。

  • APP1とAPP2の間の共有オブジェクトは分散キャッシュに保存され、常にそこから読み取られます。
  • 更新はそれぞれのアクセスレイヤーを介して実行されます-APP1はSpring-Dataリポジトリを使用し、APP2はHibernate / JPAサービスを使用します(ただし、EntityManagerは他のアプリケーションからの変更の可能性で更新されません)。
フィリップ・ザ・グレート

少し掘り下げてテストした後、Spring-dataとHibernateがこの状況を正しく処理していることが実際にわかりました。

私は純粋なHibernate / JPAに基づいてテストを行いましたが、2つのEntityManagerを使用した場合、一方が他方で行った変更が正しく表示されませんでした(構築中にサービスクラスメンバーとしてEntityManagerを作成しました)。ただし、spring-dataが行うことは、@ Transactionalメソッドを呼び出すたびに新しいHibernateセッションを開き、完了したら閉じるということです。

したがって、問題は特定のビジネスロジックにあります。これは、メソッドの呼び出し中に古いデータを「おそらく」処理することが問題ないかどうかは、@ Transactionalメソッドのコンテキストに依存するためです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

複数のデータベースを使用して単一のアプリケーションを作成する

分類Dev

JPAおよびHibernate Webアプリケーションを使用してSpring-Bootで複数のデータベースを構成する

分類Dev

複数のソリューション間で共有されるデータベースの維持

分類Dev

複数のJavaアプリケーション間で接続プールを共有する方法

分類Dev

複数のSymfonyアプリケーション(同じデータベース、複数のカーネル)間で認証を共有するにはどうすればよいですか?

分類Dev

複数のパッケージ間で単一のデータベース接続を共有する方法

分類Dev

同じデータベースRailsを共有する2つのアプリケーション

分類Dev

Androidアプリケーションで既存のデータベースを使用する方法

分類Dev

Redissonを使用する複数の独立したアプリケーションが同じクラスター化されたRedisを共有できますか?

分類Dev

Railsアプリケーションに2つのデータベースサーバーを使用する方法

分類Dev

データを共有できるアプリケーションのリストを取得する

分類Dev

Spring Bootアプリケーション全体でクラスのインスタンスを共有する

分類Dev

複数のデータベースを使用し、同じCodeIgniter3xアプリケーションでURIルーティングを問題にする

分類Dev

同じcherrypyアプリケーションで複数のディスパッチャを使用する方法は?

分類Dev

複合WPFアプリケーションでResourceDictionariesを共有する方法は?

分類Dev

2つのアプリケーション間でデータを共有する方法

分類Dev

同じMysqlデータベースをHerokuと共有する複数のSpringBoot Webアプリケーションをホストするにはどうすればよいですか?

分類Dev

SwiceアプリケーションでGuiceを使用する方法

分類Dev

IonicアプリケーションでAngularDSCacheFactoryを使用する方法

分類Dev

AndroidアプリケーションでMATLABを使用する方法

分類Dev

AngularアプリケーションでMjmlを使用する方法

分類Dev

Facebookアプリケーションを使用してPicをPostデータと共有する方法は?

分類Dev

Springアプリケーションの複数のインスタンスをデプロイする

分類Dev

Rails4のシングルRailsアプリケーションで複数のデータベースにアクセスする方法は?

分類Dev

MicrosoftGraph-アプリケーションを「共有」する方法

分類Dev

MicrosoftAccessデータベースを使用するアプリケーションを配布する方法

分類Dev

HidDeviceを複数のアプリケーションと共有する

分類Dev

YesodアプリケーションのGHCiでデータベースクエリを実行する方法

分類Dev

アプリケーションで単一のデータベース ヘルパー オブジェクトを共有する

Related 関連記事

  1. 1

    複数のデータベースを使用して単一のアプリケーションを作成する

  2. 2

    JPAおよびHibernate Webアプリケーションを使用してSpring-Bootで複数のデータベースを構成する

  3. 3

    複数のソリューション間で共有されるデータベースの維持

  4. 4

    複数のJavaアプリケーション間で接続プールを共有する方法

  5. 5

    複数のSymfonyアプリケーション(同じデータベース、複数のカーネル)間で認証を共有するにはどうすればよいですか?

  6. 6

    複数のパッケージ間で単一のデータベース接続を共有する方法

  7. 7

    同じデータベースRailsを共有する2つのアプリケーション

  8. 8

    Androidアプリケーションで既存のデータベースを使用する方法

  9. 9

    Redissonを使用する複数の独立したアプリケーションが同じクラスター化されたRedisを共有できますか?

  10. 10

    Railsアプリケーションに2つのデータベースサーバーを使用する方法

  11. 11

    データを共有できるアプリケーションのリストを取得する

  12. 12

    Spring Bootアプリケーション全体でクラスのインスタンスを共有する

  13. 13

    複数のデータベースを使用し、同じCodeIgniter3xアプリケーションでURIルーティングを問題にする

  14. 14

    同じcherrypyアプリケーションで複数のディスパッチャを使用する方法は?

  15. 15

    複合WPFアプリケーションでResourceDictionariesを共有する方法は?

  16. 16

    2つのアプリケーション間でデータを共有する方法

  17. 17

    同じMysqlデータベースをHerokuと共有する複数のSpringBoot Webアプリケーションをホストするにはどうすればよいですか?

  18. 18

    SwiceアプリケーションでGuiceを使用する方法

  19. 19

    IonicアプリケーションでAngularDSCacheFactoryを使用する方法

  20. 20

    AndroidアプリケーションでMATLABを使用する方法

  21. 21

    AngularアプリケーションでMjmlを使用する方法

  22. 22

    Facebookアプリケーションを使用してPicをPostデータと共有する方法は?

  23. 23

    Springアプリケーションの複数のインスタンスをデプロイする

  24. 24

    Rails4のシングルRailsアプリケーションで複数のデータベースにアクセスする方法は?

  25. 25

    MicrosoftGraph-アプリケーションを「共有」する方法

  26. 26

    MicrosoftAccessデータベースを使用するアプリケーションを配布する方法

  27. 27

    HidDeviceを複数のアプリケーションと共有する

  28. 28

    YesodアプリケーションのGHCiでデータベースクエリを実行する方法

  29. 29

    アプリケーションで単一のデータベース ヘルパー オブジェクトを共有する

ホットタグ

アーカイブ