spring mongoTemplate根据实体进行全文档更新
2021-06-25 本文已影响0人
blank_lion
springboot版本
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.10.RELEASE</version>
</parent>
maven
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
更新单个字段可以update.set(key,value); 下面是一种通过实体类进行全文档更新的方式
@Override
public void updateUserWebsite(Long id, WebsiteDTO websiteDTO) {
Query query = new Query(Criteria.where("id").is(id));
Document document = (Document) mongoTemplate.getConverter().convertToMongoType(websiteDTO);
document.put("id", id);
Update update = Update.fromDocument(document);
mongoTemplate.updateFirst(query, update, WebsiteDO.class);
}