mongodb的upsert方法插入数据id是null?

spring集成MongoDB,想在一个方法里实现增加和修改的功能,用mongoTemplate.upsert后发现插入新数据的id值是null,但是用insert插入是有id的,请问这是为什么?如何解决?刚接触MongoDB还不是很熟

阅读 3.5k
1 个回答

对Spring也不是特别熟……查了一下文档,upsert方法返回的是com.mongodb.client.result.UpdateResult。这个对象中有getUpsertedId

If the replace resulted in an inserted document, gets the _id of the inserted document, otherwise null.

这应该就是你要的ID

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进