• 003 主键问题


    一.概述

    主键的问题在mybatis-plus之中给出了一个解决方法,我们可以指定一个主键生成策略.

    本节我们来说明一下主键的问题.


    二 .主键生成策略

    public enum IdType {
        AUTO(0, "数据库ID自增"), INPUT(1, "用户输入ID"),
    
        /* 以下2种类型、只有当插入对象ID 为空,才自动填充。 */
        ID_WORKER(2, "全局唯一ID"), UUID(3, "全局唯一ID"), NONE(4, "该类型为未设置主键类型"),
        ID_WORKER_STR(5, "字符串全局唯一ID");

    我们看一下,这里已经有了我们常用的主键生成策略了.

      我们可能常用的就是auto策略,或者是全局唯一的注解,或者是UUID.

      上面的主键生成策略都是我们可以接受的.


    三 .获取插入值的主键值

        @Test
        public void insertForPrimaryKey() {
            User user = User.builder().lastName("trek").
                    gender(1).age(12).build();
            int result = userMapper.insert(user);
            System.out.println(result);
            System.out.println(user.getId());
        }
    JDBC Connection [com.mysql.jdbc.JDBC4Connection@6ee6f53] will not be managed by Spring
    ==>  Preparing: INSERT INTO sys_user ( last_name, gender, age ) VALUES ( ?, ?, ? ) 
    ==> Parameters: trek(String), 1(Integer), 12(Integer)
    <==    Updates: 1
    Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@7d1cfb8b]
    1
    4

    我们发现,mybatis-plus会帮助我们自动的获取主键值,这个是我们非常喜欢看到的.

  • 相关阅读:
    hdu5784 极角排序+two point
    极角排序理解
    计算多边形的面积模板
    18年CUG校赛--恶魔的序列
    二分图匹配模板
    POJ 2342 Anniversary party
    蓝桥杯真题-小计算器
    第八届蓝桥杯省赛真题题解
    Django具体操作(四)
    网络爬虫(三)
  • 原文地址:https://www.cnblogs.com/trekxu/p/9490619.html
Copyright © 2020-2023  润新知