gpt4 book ai didi

java - 使用 mongodb 查找,同时使用 java 中的吗啡迭代列表

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

我的 MongoDB 中有 2 个集合。

Details1(包含对象 1 和对象 2 的详细信息)详细信息2(包含对象2和对象3的详细信息)

java 对象本质上是 Object1 和 Object2 列表。对象 3 是单独的。

Object1 包含一个名为 List 的属性对象 2 包含链接到另一个集合中的对象 3 的字段。

目前我的 Dao 正在 ..... 获取对象 1迭代列表对象 2 的内部对象 1。使用对象 2 的信息获取对象 3。

我需要将其转换为 1 个 mongodb 查询。

对象 1 的 DAO = 获取对象 1 : -

  Query<FclDetail> query =
this.createQuery()
.field(GROUP_ACCOUNT_NO).equal(requestData.getGroupAccountNo())
.field(OFFICE_ID).equal(requestData.getOfficeId())
.field(AC_SYS_ID).equal(requestData.getAcSysId());

服务:-

 FclDetail fclDetail = fclDao.getFclDetails(request.getRequestData());
FundIfchFacility fundIfchFacility = serviceMapper.map(fclDetail);
fundIfchFacility.getBsLmStructureNodeList().parallelStream().forEach((bsLmStructureNode) -> {
FclCliDetail fclCliDetail = fclCliDetailDao.getFclCliDetails(bsLmStructureNode.getNodeInstanceId(),bsLmStructureNode.getStructureCode());}

第二次 DAO 调用:-


Query<FclCliDetail> query = this.createQuery()
.field(STRUCTURE_CODE)
.equal(strCde)
.field(NODE_INSTANCE_ID)
.equal(ndeItaId);

我如何展开或合并这两个查询以使其查找对象....找到该对象....遍历对象内的列表....然后使用有关这些对象的附加信息。


最佳答案

考虑使用 $lookup 的聚合.

关于java - 使用 mongodb 查找,同时使用 java 中的吗啡迭代列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57907664/

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