我想用Kotlin代码在Spring Boot中复制一个Mongo更新查询。
我试图通过mongoTemplate
执行查询,但是没有更新选项允许我将其传递为UpdateOptions
类型的对象作为参数。
Return a value if no record is found
db.proyectos.update({
_id: ObjectId("5bfa09f0a0441f38d45dcc9c")
},
{
$set: {
"reuniones.$[i].participantes.$[j].firma": "modificar"
}
},
{
arrayFilters: [
{
"i._id": ObjectId("5bfa09f0a0441f38d45dcc99")
},
{
"j.nomina": 2
}
]
})
MongoTemplate
var mongoTemplate = MongoTemplate(MongoClient("localhost"), "spring_mongo_db")
查询
val query: Query = Query()
query.addCriteria(Criteria("_id").`is`(firmaRequest.IdProyecto))
UpdateOptions
val updateOptions: UpdateOptions = UpdateOptions()
updateOptions
.arrayFilters(
Arrays.asList(
Filters.eq("i._id", firmaRequest.IdReunion),
Filters.eq("i.nomina", firmaRequest.NoNomina)
)
)
更新
val update: Update = Update()
update.set("reuniones.$[i].participantes.$[j].firma", firmaRequest.DataUri)
我希望能够通过mongoTemplate或其他形式执行查询。