mybatis配置批量执行SQL

这篇具有很好参考价值的文章主要介绍了mybatis配置批量执行SQL。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

foreach 标签插入数据量大时,明显影响效率,个人倾向以下配置 

applicationcontext 配置文件

    <!-- 批量执行的sqlSession -->
    <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
        <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory"></constructor-arg>
        <constructor-arg name="executorType" value="BATCH"></constructor-arg>
    </bean>

Java代码

public class TestServiceImpl implements ITestService{
@Autowired
    private SqlSession sqlSession;


public void test(){

                List<Student> list = new ArrayList<>();
                for (int i = 0; i < data.size(); i++) {
                    Student student = new Student();
                    student.setId(Utility.getUUID());
                    student.setIsDelete("0");
                    list.add(student);
                }
                //开始批量入库 
                SysTreeDicMapper mapper = sqlSession.getMapper(Student Mapper.class);
                list.stream().forEach(o -> {
                    mapper.insertSelective(o);
                });}

}

mybatis文件没什么可说的,就是普通单条插入的<insert> 标签即可文章来源地址https://www.toymoban.com/news/detail-531195.html

到了这里,关于mybatis配置批量执行SQL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 配置 mybatis 打印出执行的 sql 及返回的结果集

    在开发过程中, 经常会遇到想要看到应用所执行的 sql 这样的需求. 比如你写了一个查询的功能, 但查询出来的结果与你预期的不符合, 你想搞清楚到底哪里出了问题, 你自然需要看看所执行的 sql 语句, 必要的话甚至还要亲自拷贝到数据库里去查查. 自然, 这就要求应用要能把执

    2024年02月07日
    浏览(44)
  • 数据库中的SQL是如何执行的?

    参考文献:03丨学会用数据库的方式思考SQL是如何执行的 以oracle和MySQL为例,讲解了sql是怎么被执行的,并且对比了执行过程中,oracle和MySQL的异同。 个人感觉,讲解的核心是SQL执行时的缓存机制。 自我口述一下 sql语句在提交后, 首先进行“语法检查”,检查sql语法是否正

    2024年02月09日
    浏览(47)
  • 数据库--SQL关键字的执行顺序

    数据库-- 数据类型 : http://t.csdn.cn/RtqMD 数据库-- 三大范式、多表查询、函数sql: http://t.csdn.cn/udJSG 数据库-- MySQL增删改查: http://t.csdn.cn/xkiti select   from   join   where   group by   having   order by   聚合函数   limit   top  以及逻辑运算符not  and    or    一: 语法顺序    

    2024年02月12日
    浏览(49)
  • MyBatis动态SQL:打造灵活可变的数据库操作

    动态SQL就是根据不同的条件或需求动态地生成查询语句,比如动态搜索条件、动态表或列名、动态排序等。 在我们填写一些信息时,有些信息是必填字段,有的则是非必填的,这些信息的传入就需要使⽤动态标签 if来判断了 创建这样想学生表就可以进行测试了 下面是xml语句

    2024年02月12日
    浏览(46)
  • 数据库操作不再困难,MyBatis动态Sql标签解析

    MyBatis缓存原理 Mybatis的CachingExecutor与二级缓存 Mybatis plugin 的使用及原理 MyBatis四大组件Executor、StatementHandler、ParameterHandler、ResultSetHandler 详解 MyBatis+Springboot 启动到SQL执行全流程 使用MyBatis,或者MyBatis-plus,有一项重要的开发技能就是写动态sql,动态sql能帮我们省略很多复杂逻

    2024年02月12日
    浏览(70)
  • Navicat中导入数据库SQL脚本并执行

    1、打开Navicat数据库管理工具; 2、点击菜单栏上的“工具”,选择“命令列界面”; 打开了命令列界面 3、复制sql脚本到命令列界面内,按enter(回车)执行,会发现执行成功的OK返回消息,如下所示: 4、刷新,否则无法看到新增的数据库、数据表、数据表中的记录

    2024年02月11日
    浏览(63)
  • 【Sql】sql server数据库提示:执行Transact-SQL语句或批处理时发生了异常。 无法打开数据库msdb,错误:926。

    【问题描述】 打开sql server2008r2数据库的时候, 系统提示执行Transact-SQL语句或批处理时发生了异常。 无法打开数据库msdb,错误:926。 【概念理解】 首先MSDB数据库是的作用: 用于给SQL Server代理提供必要的信息来运行调度警报、作业及记录操作。同时也会记录数据库的备份和

    2024年02月04日
    浏览(65)
  • Oracle数据库SQL*Plus命令行执行SQL语句时,中文乱码报错解决方法

    🎉欢迎来到Java学习路线专栏~Oracle数据库SQL*Plus命令行执行SQL语句时,中文乱码报错解决方法 ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒🍹 ✨博客主页:IT·陈寒的博客 🎈该系列文章专栏:Java学习路线 📜其他专栏:Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习 🍹

    2024年01月22日
    浏览(54)
  • MySQL:想实现sql语句进行批量删除数据库或表,而引发的熬夜探究

    因为在自测过程中,创建了很多数据库,一个个手动删除属实有点对不起程序员这个身份,那么有没有简单的sql语句操作来进行批量删除数据库呢?于是便有了本篇文章 上面图片是AI创作,未经允许,不可商用哦! 删库跑路需谨慎, 放弃一切亦不易。 了解到数据库或表的信

    2024年01月16日
    浏览(59)
  • Springboot + Mybatis 同时支持多类数据库SQL的解决方案

    pg、Oracle、MySQL 的字符串转日志函数不同,可通过 _databaseId 来判断该执行哪段SQL 多余的代码就不写上了,直接根据下列代码就能理解。

    2024年02月09日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包