それは次のようになります:
WriteResult wr = getMongoTemplate().updateMulti(
new Query(where("rates.rateCardId").is(1234)),
new Update().set("rates.$[item].rate", 200),
new UpdateOptions()
.arrayFilters(
Arrays.asList( Filters.in("item.rateCardId",Arrays.asList(1,2)) )
),
ProductRates.class
);
arrayFilters()
を使用するには、基盤となるJavaドライバーが3.6.xバージョン以降であることを確認する必要があります。 UpdateOptions()
の追加もサポートする可能性があります