1

在 morphia 中,您可以使用@Index注释为@Entity类创建自动索引。我正在尝试通过指定集合名称来创建这些索引,但找不到方法。使用AdvancedDatastore您可以将 保存Entity到您想要的任何集合中,但是否可以确保指定集合上的索引而不是Entity.

advancedDatastore.ensureIndexes(Entity.class); // This will create indexes on the mapped Entities.

我正在寻找一种方法来执行以下操作,但我没有看到任何类似于下面的方法,是否有解决方法来实现这一点:

advancedDatstore.ensureIndexes("exampleCollection", Entity.class); //create indexes of Entity.class for the exampleCollection. 
4

1 回答 1

0

是的,您可以扩展AdvancedDatastore接口和DatastoreImpl具体类以添加ensureIndex*带有额外参数的方法。我们在我们的组织中这样做并且它有效。

这里还有一个待处理的拉取请求,可以将此功能直接添加到 Morphia:https ://github.com/mongodb/morphia/pull/541 。如果您愿意构建自己的 Morphia jar,则可以使用此处列出的补丁。

于 2013-11-14T19:22:39.253 回答