首先上的是yml文件的里面的内容
记住下面的
&allowMultiQueries=true必须要加,不然会引起The error may involve defaultParameterMap报错,是因为mybatis默认不支持一次性插入多条的语法。
server:
port: 8181
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/nbsystem?serverTimezone=UTC&allowMultiQueries=true
username: root
password: root
pagehelper:
helper-dialect: mysql
reasonable: true
support-methods-arguments: true
params:
接下来看xml文件的
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.demo.ProvinceMapper">
<update id="addProvince">
<foreach separator=";" collection="list" item="provincePojos" index="index">
update province
<set>
ProvinceCode=#{provincePojos.StringString}
</set>
where id=#{provincePojos.area}
</foreach>
</update>
<insert id="insertInnerOrder">
<foreach collection="list" item="OrderList" index="index" separator=";">
insert into orderfood.innerorder
(I_foodCode, I_foodCount, I_orderCode) values (#{OrderList.foodCode},#{OrderList.foodCount},#{OrderList.orderCode})
</foreach>
</insert>
</mapper>
并且与之对应的mapper接口
int addProvince(List<provincePojo> provincePojos);
本文详细介绍如何在MyBatis中配置批量操作,包括yml文件中必要的参数设置,如&allowMultiQueries=true,以避免TheerrormayinvolvedefaultParameterMap报错。同时,展示了如何在XML映射文件中使用<foreach>元素实现一次插入多条记录的语法,以及对应的mapper接口定义。
5519

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



