当前位置: 首页 > 知识库问答 >
问题:

如何在spring中使用Mongotemplate或MongoRepository从两个集合中获取数据

储承
2023-03-14

几个月前我已经开始使用spring和mongodb。到目前为止,我还不知道如何使用Mongotemplate或MongoRepository从多个集合中提取数据。我有两个集合的人和联系人。现在我想获取客户列表和联系人。Customer的id是IS_ID,而Contact的关系id是customerId,所以我如何获得数据的Customer联系人详细信息。

共有1个答案

徐峰
2023-03-14

您的数据需要去规范化,想想MongoDB的方式。您需要存储“个人/客户”数据以及相应的“联系人”。这是一种1:N的联想。您可以轻松地在以下模式中存储所需的数据,下面是一个示例“Person/Customer”文档,它嵌入了他的“Contact”详细信息=>

{
 name:"abc",
 age: 35,
 Contact:{[email:"abc1@gmail.com",mobile:123],[email:"abc2@gmail.com",mobile:234]}
}

如果您最终像前面提到的那样对数据进行规范化,那么您往往会放弃MongoDB提供的强大嵌入功能,而最终在代码中进行连接。

 类似资料:
  • 问题内容: 我想在Cloud Firestore中定义这两个集合。一些示例数据如下所示: 播放清单: 名称:“ playlist1” songCount://要实时计算 歌曲: 标题:“ song1” playlistId:“ playlist1” 标题:“ song2” playlistId:“ playlist1” 标题:“ song3” playlistId:“ playlist1” 此外,

  • 当数据存储在多个集合中时,如何显示配置文件的详细数据 尝试了此链接 预期的结果将来自数据应该获取的所有集合,但使用我的代码,它给出的结果直到specialty,但在此之后,它只打印ObjectID

  • 如何使用Spring FirestoreReactiveRepository从子集合中获取文档? 问题是:如何动态地将子集合名称或路径指定给@Document annotation? 我的firestore系列:(城市是一级系列,公寓是本系列的子系列) 波乔市 POJO公寓是: 从城市收集中获取数据的CityRepository 调用findById(nyc)时,公寓返回空值。我想在城市对象中填充

  • 我使用的是Vue.js和Firebase FiRecovery。现在我有两个集合和。在订单集合中,我已经存储了集合的每个文档的id。我现在必须从中获取相应用户的详细信息。我应该怎么做?这是我迄今为止所做的 我需要在userInfo中存储用户数据。提前谢谢

  • 给出了以下配置: 我需要一个存储库来访问电影,看起来有点像这样: 是否有一种注释驱动的方法来告诉存储库要使用哪个模板?如果没有,还能做些什么来解决这个问题?