gpt4 book ai didi

spring-data-mongodb - MongoDB 中的自定义类型映射

转载 作者:行者123 更新时间:2023-12-04 08:06:49 37 4
gpt4 key购买 nike

首先让我说我的目标是实现最快的读取操作,所以如果您在我的代码/描述中发现可以帮助我实现这一目标的内容,请告诉我。

我有一个只读的 Web 应用程序,它从 MongoDB 中提取对象。但是,我将返回给用户的响应对象不需要所有数据。按照目前的情况,流程如下:

  • 从 mongo 中检索信息
  • 将该信息映射到对象
  • 使用访问器方法将值从所述对象传输到响应对象。
  • 将响应对象返回给用户。

  • 我想通过将来自 mongo 的数据直接映射到响应对象来组合步骤 1 和 2。

    我已经翻遍了 DefaultMongoTypeMapper以及它使用的所有类,但在我确定它是正确的方向之前,我需要了解很多。

    除了我上面列出的内容,我还有其他一些担忧。一是存储在 Mongo 中的对象没有 _class字段,因为它们是原始数据(根据我所见,类型映射器使用该字段来确定要映射到的类)。这样做的好处是,来自数据库的所有内容都将映射到同一个对象,因此我们可以假设要使用哪个类。

    有没有人做过这样的事情已经过去了,或者对如何实现这一点有任何建议?

    非常感激。

    最佳答案

    如果您正在寻找最快的读取操作,可能首先要看的是实际读取的速度,以及使用 MongoDB 跨网络传输的速度。
    Java 中的处理(在合理范围内)将占总请求时间的非常低的百分比。
    您可能已经这样做了,但请看一下来自 MongoDB 的原始读取(索引、查询、记录数、数据库架构、配置等)

    对于 java 处理,它非常依赖于您想要对结果做什么。
    我建议您为 Java 处理的各种选项创建一些测试,这可能是 CPU 限制。如果您可以创建一个一次处理许多记录的测试,您就可以看到每个记录的性能特征。

    您能否手动编写代码以从文档中创建 POJO?这很可能是性能最高的。
    否则像吗啡之类的 ODM https://code.google.com/p/morphia/

    如果您熟悉/使用 Spring(如上所述),请参阅:http://projects.spring.io/spring-data-mongodb/也许看看:http://spring.io/guides/gs/accessing-data-mongo/

    关于spring-data-mongodb - MongoDB 中的自定义类型映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19427578/

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