zoukankan      html  css  js  c++  java
  • 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会帮助我们自动的获取主键值,这个是我们非常喜欢看到的.

  • 相关阅读:
    EntityFramework 在实际开发做项目架构的一点疑问
    应用运筹学4Danzig Wolfe Decomposition
    应用运筹学2 约束优化
    应用运筹学3Benders Decomposition
    应用运筹学1 变量使用
    11组Beta冲刺5/5
    11组Beta冲刺3/5
    11组Beta冲刺4/5
    11组Alpha冲刺总结
    11组Beta冲刺1/5
  • 原文地址:https://www.cnblogs.com/trekxu/p/9490619.html
Copyright © 2011-2022 走看看