【问题标题】:Morphia: Create new Morphia instance for each database?Morphia:为每个数据库创建新的 Morphia 实例?
【发布时间】:2015-03-30 21:53:34
【问题描述】:

在我现在的初始化代码中,我创建了 1 个Morphia 实例并使用它来映射我所有数据库中的所有类。我注意到,当我调用ensureIndexes() 时,它会初始化一个空集合并索引所有数据库中的所有集合。

正确的模式是为每个数据库创建 1 个Morphia 实例,然后遍历每个实例以确保索引?

【问题讨论】:

    标签: java mongodb morphia


    【解决方案1】:

    您可以使用一个 Morphia 实例并为每个 db 创建一个 Datastore,只要它们都共享相同的映射信息。

    【讨论】:

    • 现在我正在使用单个 morphia 实例为每个数据库创建一个数据存储。但是当我在任何实例上调用 datastore.ensureIndexes() 时,它会为映射到 morphia 的所有类创建索引和集合。
    • 是的。它会这样做。每个 Morphia 实例有一个 Mapper。如果您不希望每个数据库中的每个集合都包含,则需要稍微分解一下。
    • 好的,明白了。感谢您的澄清。
    猜你喜欢
    • 2021-07-09
    • 1970-01-01
    • 2011-10-13
    • 2011-05-10
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多