Java 有没有一种方法可以使用SpringWebFlux和MongoDB从手动参考中获取文档?

Java 有没有一种方法可以使用SpringWebFlux和MongoDB从手动参考中获取文档?,java,spring,mongodb,spring-data,spring-data-mongodb,Java,Spring,Mongodb,Spring Data,Spring Data Mongodb,我正在尝试使用SpringWebFlux创建一个SpringDataMongoDB存储库,用于我的服务器后端。总体而言,我对Spring数据还是很陌生,我正在尝试找出如何仅使用一个GET请求就从手动引用返回文档到我的服务器 例如,假设我的Person文档具有以下文档结构: { "_id": "123", "person": "Test Person", "address": { "refId": "456", "name": "House" }, "occup

我正在尝试使用SpringWebFlux创建一个SpringDataMongoDB存储库,用于我的服务器后端。总体而言,我对Spring数据还是很陌生,我正在尝试找出如何仅使用一个GET请求就从手动引用返回文档到我的服务器

例如,假设我的
Person
文档具有以下文档结构:

{
  "_id": "123",
  "person": "Test Person",
  "address": {
    "refId": "456",
    "name": "House"
  },
  "occupation": "Test occupation"
}
{
  "_id": "456",
  "street": "Test Street",
  "houseNumber": "404"
}
以及我的
地址
文档的以下结构:

{
  "_id": "123",
  "person": "Test Person",
  "address": {
    "refId": "456",
    "name": "House"
  },
  "occupation": "Test occupation"
}
{
  "_id": "456",
  "street": "Test Street",
  "houseNumber": "404"
}
我创建了一个
PersonRepository
AddressRepository
,分别扩展了
ReactiveMongoRepository
ReactiveMongoRepository
。当我想查询个人
Person
(s)和
Address
(es)时,这非常有用,我已经测试过了,它似乎可以正常工作。我的前端能够向该后端发出GET请求(格式为/person/{id}和/address/{id}),并检索正确的数据。但是,每当我想为特定的
获取
地址时,我需要发出两个GET请求,一个请求获取
,从中我解析特定地址“refId”,然后将其插入到
地址
端点的第二个GET请求中。虽然这是合乎逻辑的,但它是对服务器的额外GET请求,我想知道是否有某种方法来描述我后端的查询,这样我就可以简单地向/person/{id}/address端点发出一个GET请求,该端点将查找具有指定id的
person
文档,并从“refId”返回
address
文档在
Person
中(不是
Person
文档的“地址”部分,我想返回实际的
地址
文档)

我已经尝试的不多,因为我没有很多想法。因为我使用的是SpringWebFlux,所以我所有的服务器响应都是以发布者的形式(
Mono
/
Flux
)作为存储库返回的内容,我不确定在将它们作为
ServerResponse
对象返回之前如何处理它们

多谢各位