Spring Data MongoDB 数据库批量操作的方法

 更新时间:2018年11月01日 14:59:49   作者:HJHxHJH  
在项目开发中经常会批量插入数据和更新数据的操作,这篇文章主要介绍了Spring Data MongoDB 数据库批量操作的方法,非常具有实用价值,需要的朋友可以参考下

前言

在项目开发中遇到了需要批量插入数据和更新数据的操作,但是在某度上搜并没有找到有用的东西,于是到stackoverflow中搜到如下解决方案:

 

实践

一、BulkOperations 批量插入

代码如下:

   testModel m1 = new testModel("m1", 10);
    testModel m2 = new testModel("m2", 20);

    // BulkMode.UNORDERED:表示并行处理,遇到错误时能继续执行不影响其他操作;BulkMode.ORDERED:表示顺序执行,遇到错误时会停止所有执行
    BulkOperations ops = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED, "test");
    ops.insert(m1);
    ops.insert(m2);

    // 执行操作
    ops.execute();

运行结果:

成功插入多条数据。

二、BulkOperations 批量更新

代码如下:

  Update u1 = new Update().set("age",15);
    Query q1 = new Query(Criteria.where("name").is("m1"));

    Update u2 = new Update().set("age",25);
    Query q2 = new Query(Criteria.where("name").is("m2"));

    BulkOperations ops = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED, "test");
    ops.updateOne(q1,u1);
    ops.updateOne(q2,u2);

    ops.execute();

运行结果:

成功更新多条数据。

最后,希望这些例子对网友们有帮助。也希望大家多多支持脚本之家。

相关文章

  • java多线程使用mdc追踪日志方式

    java多线程使用mdc追踪日志方式

    这篇文章主要介绍了java多线程使用mdc追踪日志方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • 解决@DateTimeFormat格式化时间出错问题

    解决@DateTimeFormat格式化时间出错问题

    这篇文章主要介绍了解决@DateTimeFormat格式化时间出错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Java中的包装类是什么

    Java中的包装类是什么

    这篇文章主要介绍了Java中的包装类是什么,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 详解JAVA调用WCF服务的示例代码

    详解JAVA调用WCF服务的示例代码

    这篇文章主要介绍了详解JAVA调用WCF服务的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • SpringBoot项目修改访问端口和访问路径的方法

    SpringBoot项目修改访问端口和访问路径的方法

    这篇文章主要介绍了SpringBoot项目修改访问端口和访问路径的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • 利用ssh实现服务器文件上传下载

    利用ssh实现服务器文件上传下载

    这篇文章主要为大家详细介绍了如何利用ssh实现服务器文件上传下载,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • spring中的FactoryBean代码示例

    spring中的FactoryBean代码示例

    这篇文章主要介绍了spring中的FactoryBean代码示例,涉及FactoryBean的实现等相关内容,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • java实现堆排序以及时间复杂度的分析

    java实现堆排序以及时间复杂度的分析

    本文主要介绍了java实现堆排序以及时间复杂度,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • 深入SQLite多线程的使用总结详解

    深入SQLite多线程的使用总结详解

    本篇文章是对SQLite多线程的使用进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • mapstruct中的@Mapper注解的基本用法

    mapstruct中的@Mapper注解的基本用法

    在MapStruct中,@Mapper注解是核心注解之一,用于标记一个接口或抽象类为MapStruct的映射器(Mapper),本文给大家介绍mapstruct中的@Mapper注解的相关知识,感兴趣的朋友一起看看吧
    2025-06-06

最新评论