java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Mybatis-plus批量去重插入

Mybatis-plus批量去重插入ON DUPLICATE key update使用方式

作者:军大君

这篇文章主要介绍了Mybatis-plus批量去重插入ON DUPLICATE key update使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1.添加唯一索引

【用来判断数据库是否有重复的标志】

这里的唯一索引可以是多个字段,也可以是唯一字段,这里我用name和password作为唯一标识

2.同时表对应的pojo类上字段也要加注解

@Data
@TableName("admin")
public class AdminEntity implements Serializable {
    private static final long serialVersionUID = 244947848024328503L;
    /**
     * 主键id
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    private String name;
    private String password;
}

3.AdminMapper.java

public interface TestMapper extends SuperMapper<AdminEntity > {
    void saveAll(List<AdminEntity > list);
}

4.AdminMapper.xml

<?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.hxj.test.mapper.AdminMapper">
    <insert id="saveAll">
        insert into admin(name,password)
        values
        <foreach collection="list" item="item" separator=",">
            (#{item.name},#{item.password})
        </foreach>
        ON DUPLICATE key update
        name=values(name),
        password=values(password)
    </insert>
</mapper>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

您可能感兴趣的文章:
阅读全文