问题
<insert id="insertListIfNotExists" useGeneratedKeys="true" keyProperty="id">
INSERT IGNORE INTO
`tag` (name, create_time)
VALUES
<foreach collection="list" item="item" separator=",">
(#{item.name}, #{item.createTime})
</foreach>
</insert>
useGeneratedKeys与INSERT IGNORE配合后,若插入顺序是
id:1 name: name1
id: null name: name2
id: null name: name3
返回的id会变成
id: 2 name: name1
id: 3 name: name2
id: null name: name3
解决方法
请单个进行插入