对不起,非常愚蠢的问题。我正在使用 Morphia 1.00。有一些实体:
@Entity("Vacancy")
public class Vacancy {
@Id
private ObjectId id;
@Version
long version;
private String title;
以及其他一些字段,setter 和 getter。尝试保存相同的实例:
Vacancy vacancy1 = new Vacancy();
vacancy1.setTitle("Dumm");
Vacancy vacancy2 = new Vacancy();
vacancy2.setTitle("Dumm");
vacancyDao.getDatastore().save(vacancy1);
vacancyDao.getDatastore().save(vacancy2);
据我所知,mongoDb 必须执行 upsert 命令(意思是“如果存在则更新;如果缺少则插入(单个文档)”)。但是,mongo 不仅仅是更新 _id 字段,而是将新实体保存在数据库中。