我有一個物體EntityA存在于多個資料源 datasourceA和datasourceB中。基本上,兩個資料庫中都存在相同的表但不同的內容。
在這種情況下我應該如何組織我的 Spring Boot 應用程式?目前我有以下內容:
- 1個物體類
- 2 個存盤庫,每個資料源一個。我有一個組態檔,指示存盤庫應使用的資料源。
- 1 個服務類,它根據給定的引數查詢其中一個存盤庫。
問題在于,在我的實際程式中,我有 6 個物體,它們都在 6 個資料源之間共享,這導致我有 32 個存盤庫,每個物體和每個資料源一個。此外,我用于選擇在服務類中使用的正確存盤庫的代碼也很長。
這是解決問題的最佳方法,還是有辦法更好地組織這個/限制所需的存盤庫數量?Spring Boot 在我的應用程式中使用休眠。
uj5u.com熱心網友回復:
如果這些重復物體將始終為每個資料源同時更新,那么您只能在系統范圍內維護一個物體。否則,您需要為每個資料源創建唯一物體。您已經宣告您為存盤庫管理配置了資料源。您還可以通過繼承來集中存盤庫的使用。喜歡;
public interface BaseLoadRepository extends CrudRepository<LoadEntity, Long>
public interface DataSource1LoadRepo extends BaseLoadRepository
public interface DataSource2LoadRepo extends BaseLoadRepository
它使您有機會為每個資料源獨立添加新方法。這種方法也可以用于物體。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/454324.html
上一篇:一對多單向關聯插入查詢失敗
