Spring Data:2种不同数据源之间的关系

Nic*_*las 9 spring spring-data

在Spring Boot Application项目中,我有2个数据源:

  • MySQL数据库(又名"db1")
  • MongoDB数据库(又名"db2")

我正在使用Spring Data JPASpring Data MongoDB,它的工作效果很好......一次一个.

说db1处理"玩家",db2处理"团队"(带有玩家ID的列表).是否有可能使这两个异构实体之间的关系有效?(即@ManyToOne,@ Transaction,Lazy/Eager等)

例如,我希望能够写:

List<Player> fooPlayers = teamDao.findOneById(foo).getPlayers();
Run Code Online (Sandbox Code Playgroud)

编辑:如果可能的话,我想找到一个适用于任何弹簧数据项目的解决方案

New*_*ton 3

不幸的是,您的难题在春季数据中没有解决方案。

可能的情况是您创建自己的接口(DAO)类。该 DAO 类将具有查询两个数据库的实现。一个非常粗略和简短的例子是

your DAO
{
    yourFind (id)
    {
        this would find in db2 and return a relevant list of objects
        findOneByID(id)
        get the player from the above retrieved list and query db1
        getPlayer(player)
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望这能为您指明正确的方向