2017-09-01 26 views
0

我有數據模型與實體:春天JPA庫嘗試返回不同的實體,並拋出錯誤

package mydomain.datamodel.serviceone; 

@Entity(name = "order") 
public class ServiceOneOrder { 

package mydomain.datamodel.servicetwo; 

    @Entity(name = "order") 
    public class ServiceTwoOrder { 

映射到不同的數據庫表中的每個實體,但必須等於名稱。但表有不同的列

ServiceOneDB(first DB) 
    -orders 
    -Long id 
    -String field1 
ServiceTwoDb(second DB) 
    -orders 
     -String id 
     -Boolean field1 

而且我有倉庫:

@Repository 
public interface ServiceOneOrderRepository extends CrudRepository<ServiceOneOrder, Long> { 
} 

但是當我嘗試

serviceOneOrderRepository.someQuery(findAll(), getOneById, etc.) 

這個倉庫還給我ServiceTwoOrder代替ServiceOneOrder並拋出錯誤。

這個實體放置在不同的包中,有不同的名稱(類名),在服務配置不同的包掃描中,只有實體名稱等於。

與wha知識庫<OneEntity.class, Long>返回我TwoEntity.class

+0

也許您需要爲每個存儲庫配置不同的數據源 –

回答

-1

您可以參考Official Documentation爲您的用例配置兩個數據源,並根據您使用的ORM注入兩個EntityManager/SessionFactory。

相關問題