I tried to modify array values with following :
final UpdateResult ur = operations.updateMulti(
new Query().addCriteria(
Criteria.where("tags.applications").in(Collections.singletonList(4))),
new Update().set(String.format("%s.$","tags.applications"), 8),
"testMetaModel");
the problem is, if the array is like tag: application: [1,2,3,4,4,5,6]
If I use above “$” update, it could only update the first matched “4”, but I want to update all “4” to “8”, what should I do ? I use spring MongoTemplate.