gpt4 book ai didi

java - Java中是否可以@Query两个微服务数据库?

转载 作者:行者123 更新时间:2023-12-01 06:01:51 24 4
gpt4 key购买 nike

我正在尝试编写一个查询,其中将应用两个微服务应用程序数据库中的条件来检索数据。是否可以在存储库中编写 @Query 来执行此操作,或者我需要通过服务或任何其他方法来执行此操作?使用下面的当前函数我得到一个错误。任何代码示例或引用文章都将受到真正的赞赏。

下面我展示了我的 Controller 功能和存储库查询。

Controller 功能:

@GetMapping("/orders/query/test/")
public List<Orders> findAllOrdersWhereCondition(){
log.info("Start of findAllOrdersWhereCondition method");
return repository.findAllActiveAndUnrespondedQueriesForHelp();
}

存储库功能:

@Query("SELECT g FROM ORDERS g INNER JOIN operators o ON g.profileToId = o.id OR g.profileFromId = o.id WHERE g.active = true and g.responded = false AND o.operatorType = 1 ")
List<Orders> findAllActiveAndUnrespondedQueriesForHelp();

最佳答案

是一项服务与两个数据库通信,还是两项服务各自与各自的数据库通信?

如果是前者,并且数据库是关系型且 ACID,您可以执行 JOIN 和单个查询。

如果是后者,您必须发出两个 HTTP 请求,每个服务一个。他们互相不了解。在这种情况下您可能已经放弃了 ACID。

关于java - Java中是否可以@Query两个微服务数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56021486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com