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);
    }
上一篇下一篇

猜你喜欢

热点阅读