【发布时间】:2013-07-23 05:51:11
【问题描述】:
所以我注意到 Spring Data 的 MongoTemplate 有很多不同类型的“保存对象”操作,例如 save、upsert、insert 和 updateFirst。
另一方面,Spring Data 的 MongoRepository 接口有一个持久化方法:“save”。现在,显然,如果我想要创建/更新/更新插入功能,我可以很容易地实现它们。只需在调用“保存”之前执行一次获取并检查实体是否存在。但是 MongoTemplate 有如此多的选项似乎很奇怪(我什至无法弄清楚 save 和 upsert 之间的区别是什么),但是 Spring Data 的 repos 是如此有限。
如果您要使用创建/更新语义,您是否认为使用 Spring Data MongoRepositories 而不自定义其方法是浪费/懒惰,或者是 get + null check + repository.save 与 mongoTemplate 之间的区别.insert 太无关紧要了?
【问题讨论】:
标签: java spring mongodb spring-data-mongodb