一、前言
当我们使用MyBatis一次性插入多条数据时候也可以使用foreach标签,本文我们将介绍MySQL中使用MyBatis批量插入数据的两种方式。
二、案例
①第一种方式
修改EmpMapper文件,增加batchSave方法
/**
* 批量插入数据
* @param empList
*/
public void batchSave(List<Emp> empList);
修改EmpMapper.xml文件
<insert id="batchSave">
into t_emp(emp_name,emp_email,dept_id) VALUES
<foreach collection="list" item="emp" separator=",">
(#{emp.empName}, #{emp.empEmail}, #{emp.deptId})
</foreach>
</insert>
修改MyBatis测试类,增加测试方法testBatchSave
@Test
public void testBatchSave() throws IOException {
SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
SqlSession openSession = sqlSessionFactory.openSession();
try {
EmpMapper mapper = openSession.getMapper(EmpMapper.class);
List<Emp> empList = new ArrayList&

本文介绍了如何在MySQL中使用MyBatis的动态SQL标签foreach进行批量数据插入,包括两种方法:一是利用`insert into values`语法,二是通过设置`allowMultiQueries=true`参数解决MySQL不支持一次性多条插入的问题。

6785

被折叠的 条评论
为什么被折叠?



