mybatis批量插入数据到MySQL数据库数据能够插入成功但后台会报BindException,经过分析发现为mapper配置文件出错引发,现将完整配置贴出,如下所示:
<insert id="insertBatch" useGeneratedKeys="true" keyProperty="id" parameterType="java.util.List"> <selectKey resultType="long" keyProperty="id" order="AFTER"> SELECT LAST_INSERT_ID() </selectKey> insert into m_prize_red_coins (type,name,minRank,maxRank,minJoin,maxJoin,redCoins,silverScore,goldScore,createTime) values <foreach collection="list" item="item" index="index" separator="," > (#{item.type},#{item.name},#{item.minRank},#{item.maxRank},#{item.minJoin},#{item.maxJoin},#{item.redCoins},#{item.silverScore},#{item.goldScore},#{item.createTime}) </foreach> </insert>应特别注意:
1>parameterType="java.util.List"时,collection="list"
2>useGeneratedKeys="true"时keyProperty以及keyColumn应该确认无误,前者为bean类属性名后者为数据库字段名;另selectKey也应该配置妥当