千家信息网

Mybatis Plus使用@TableId坑怎么解决

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"Mybatis Plus使用@TableId坑怎么解决",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Mybatis Plus使用@
千家信息网最后更新 2026年11月01日Mybatis Plus使用@TableId坑怎么解决

这篇文章主要讲解了"Mybatis Plus使用@TableId坑怎么解决",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Mybatis Plus使用@TableId坑怎么解决"吧!

    Mybatis Plus使用@TableId之坑

    1. TableId 可选类型

    不添加注解时,默认使用ID_WORKER(3)

    public enum IdType {    /**     * 数据库ID自增     */    AUTO(0),    /**     * 该类型为未设置主键类型(将跟随全局)     */    NONE(1),    /**     * 用户输入ID     * 

    该类型可以通过自己注册自动填充插件进行填充

    */ INPUT(2), /* 以下3种类型、只有当插入对象ID 为空,才自动填充。 */ /** * 全局唯一ID (idWorker) */ ID_WORKER(3), /** * 全局唯一ID (UUID) */ UUID(4), /** * 字符串全局唯一ID (idWorker 的字符串表示) */ ID_WORKER_STR(5); }

    2. @TableId(value = "id",type= IdType.AUTO)

    使用条件:

    • id 类型可以是Interger/Long;

    • 数据库主键id,mysql必须设置自增主键,postgreSQL必须设置自增序列,才能够使用此注解。

    3. @TableId(value = "id",type= IdType.ID_WORKER)

    使用条件:

    • id 类型必须是Long;

    • 因为ID_WORKER 生成的snowflakeId 是19位的全局id。

    Mybatis Plus TableId无效

    初次使用mybatisplus,刚开始正常,后来发现插入时总是duplicate key,百事不得其解,后发现问题如下

    @TableId(type = IdType.ID_WORKER)    private Long id; # 正确        private long id; # 错误        private int id;  # 错误

    感谢各位的阅读,以上就是"Mybatis Plus使用@TableId坑怎么解决"的内容了,经过本文的学习后,相信大家对Mybatis Plus使用@TableId坑怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

    类型 全局 学习 内容 字符 字符串 数据 数据库 条件 注解 错误 问题 只有 可以通过 对象 就是 序列 思路 情况 插件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳恒合互联网络科技有限公司 科技股互联网 新华互联网科技学院 互联网科技媒体 科技互联网公司logo 互联网巨头投资的硬核科技 福州新华互联网科技学校 知乎 彤创互联网科技有限公司 宜昌元轩互联网科技有限公司 卓翼科技产业互联网合作 伊宁互联网科技做什么的 众安科技工业互联网合作 广州千川互联网科技有限公司 江苏互联网智能科技软件 互联网与数字科技关系 广州燕处互联网科技有限公司 广州梦谷互联网科技有限公司领导 美国五大互联网科技公司市值多少 互联网领先科技成果宣传视频 宁波允成互联网科技有限公司 湖北九亚互联网络科技有限公司 南京欣网互联网科技 天下捷融互联网科技 湖南一路畅行互联网科技 哈尔滨屹滨互联网科技有限公司 中国互联网十大科技股排名 风投北京互联网科技 广州三三互联网科技有限公司 安徽零酒互联网科技有限公司 杭州科技互联网公司有哪些
    0