此文只是为了记录几个基本操作,首先Upsert,有多种方法可以进行,但是都需要指定UpdateOptions.upsert(true),其中最简单的办法如下(eqq是一个用来filter的BSON,具体用法请查看之前文章):
dbColl.replaceOne(eqq("_id", y.get("_id")), y, new UpdateOptions().upsert(true))
其次是InsertMany,在InsertMany中,如果出现dup-key会导致报错,整个list都没有插入成功,但是我想大部分人都需要的是即使出现了一个重复的key那么其他没出现问题的也插入成功,只有这个重复的不插入,那么就需要用到如下命令,添加一个InsertManyOptions().ordered(false)就可以了:
dbColl.insertMany(resList, new InsertManyOptions().ordered(false))