首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoTemplate findAndModify获取更新的文档计数

问MongoTemplate findAndModify获取更新的文档计数
EN

Stack Overflow用户
提问于 2016-10-14 07:55:27
回答 1查看 2.9K关注 0票数 0

我使用MongoTemplate实现了一种方法,该方法可以根据查询更新多个文档,并返回更新的文档计数。

当我使用MySQL时,update方法通常返回默认的更新数据计数,所以我想知道如何在mongo中得到相同的内容?

另外,使用findAndModify,因为我希望这个函数是多线程安全的。

请帮帮我..。

EN

回答 1

Stack Overflow用户

发布于 2016-10-14 09:10:04

findAndModify只更新一个文档,而在MongoTemplate中,我们有updateMulti更新多个文档,并返回一个writeResult,它可以告诉您更新了多少个文档

代码语言:javascript
复制
/**
 * finds the elements based on query and modifies it
 * 
 * @param query
 * @param update
 * @param clazz
 * @return
 * @throws MeowException
 */
protected <T> WriteResult modifyAll(final Query query, final Update update, final Class<T> clazz) throws MeowException{
    try{
        return getMongoTemplate().updateMulti(query, update, clazz);
    }catch(Exception ex){
        throw new MeowException(ex).withParam("query", query).withParam("update", update).withParam("class", clazz).logToFile("Exception in modifyAll");
    }
}

这可以称为

代码语言:javascript
复制
WriteResult result = modifyAll(query, update, Kitten.class);
logger.error("document updated count :"+result.getN());

希望能帮上忙。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40037875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档