MyBatis-批量操作(MySQL)
需求:批量添加员工
映射文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mybatis.dao.EmployeeMapperDynamicSQL">
<!-- 批量保存:public void addEmps(@Param("emps")List<Employee> emps); -->
<!-- Mysql批量保存的两种方式: -->
<!-- 1.MySQL下批量保存,可以使用Foreach遍历,MuSQL支持values()()() -->
<!--
<insert id="addEmps">
insert into tbl_employee(last_name,email,gender,d_id)
values
<foreach collection="emps" item="emp" separator="," >
(#{emp.lastName},#{emp.email},#{emp.gender},#{emp.dept.id})
</foreach>
</insert>
-->
<!--2. MySQL默认是不允许同时执行多条sql语句的,需要在连接数据库时将allowMultiQueries设置为true
jdbc.url=jdbc:mysql://localhost:3306/mybatis?allowMultiQueries=true
-->
<!-- 这种分号分隔多个sql也可以用于其他的批量操作(删除、修改) -->
<insert id="addEmps">
&l