我们可以从客户端生成ObjectId并在插入时使用它。我想要在插入过程之外处理它。我需要将它配置为我的默认_id生成过程,这样当我调用insert时,insert方法应该创建自定义objectId并使用它。是否可以使用mongodb的Java驱动程序?
我需要以某种方式覆盖默认的_id生成过程。我不喜欢在插入文档中明确定义_id。
答案 0 :(得分:1)
目前无法直接通过驱动程序实现。
尽管存在可用于创建自定义实现的IdGenerator接口,但目前无法将该自定义实例注入驱动程序。
您可以在MongoDB Java驱动程序repository中看到它。
有一个JIRA ticket支持这个,然而,它被关闭为another ticket的副本,它再次关闭,因为"赢得了修复"。
但是,您应该能够以保存任何内容之前分配自定义ID的方式实现您的存储库。