阅读 104

MyBatis-Plus添加:常用主键策略的分析及实现

MyBatis-Plus在MyBatis的基础上只做增强,不做改变,目的是为了简化开发,提高效率。本专栏六篇文章围绕MyBatis-Plus的常用技术点,结合springboot,实现了对数据库记录的CRUD操作,其他文章请参考:


作者:Hudie
个人公众号/CSDN博客:编程一只蝶
项目已开源至gitee:https://gitee.com/guo-qianliang/mybatis-plus-test
项目已开源至github:https://github.com/Guoqianliang/mybatis-plus-test


MyBatis-Plus自动生成了一个id

在上文《MyBatis-Plus入门案例:查询数据库中所有记录》中,已经搭建好了环境并测试了查询操作,接下来测试添加操作,具体测试代码如下:

    @Test
    public void testAdd(){
        User user = new User(null,"lucy",23,"lucy@qq.com");
        int insert = userMapper.insert(user);
        // 返回影响行数
        System.out.println(insert);
    }

添加时自动生成了默认主键策略

我们在创建表的时候并没有设置自动增长,并且添加时设置id为null。但是却自动出现了一串长长的id,这串id是由MyBatis-Plus为我们自动生成的,它叫做主键策略。接下来就讲解MyBatis-Plus的主键策略技术。

ASSIGN_ID默认策略

使用注解可以实现主键策略,MyBatis-Plus默认的主键策略是:ASSIGN_ID (底层使用了雪花算法)

    @TableId(type = IdType.ASSIGN_ID)

主键策略

上述主键策略中,常用的是ASIGN_IDAUTO,剩下的ASSIGN_UUID是自动生成一个随机值,INPUT则是手动设置值。

AUTO自增策略

若使用AUTO自增策略,则需要在创建数据表的时候设置主键自增。在实体字段中如下配置:

     @TableId(type = IdType.AUTO)

要想影响所有实体的配置,还可以设置全局主键策略:

    #全局设置主键生成策略
    mybatis-plus.global-config.db-config.id-type=auto

至此,关于MyBatis-Plus的主键策略测试完成。

作者:编程一只蝶

原文链接:https://www.jianshu.com/p/9a40dca63353

文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐