1. 程式人生 > 其它 >mybatis-plus主鍵策略生成失敗

mybatis-plus主鍵策略生成失敗

技術標籤:SpringCloud學習java

mybatis-plus主鍵策略生成失敗

花開堪折直需折,莫待無花空折枝

問題:

主鍵生成失敗,一直為0(int型別預設為0),

在這裡插入圖片描述

實體類:使用雪花演算法+UUID生成主鍵策略

@Data
public class User {
    @TableId(value = "id",type= IdType.ASSIGN_UUID)
    private int id;
    private String name;
    private int age;
    private String email;
}

資料庫:

在這裡插入圖片描述

測試程式碼:

@Test
void insertTest(){
    User user=new User();
    user.setName("L");
    user.setAge(18);
    user.setEmail("[email protected]");
    int res = userMapper.insert(user);
    System.out.println(res);
    System.out.println(user);

}

分析:

突然想到之前學習“雪花演算法”時,雪花演算法為64位長整型,而我的id型別位int,所以可能導致生成失敗;

將id改為long型後再次測試,又發生錯誤,說型別不匹配:
在這裡插入圖片描述

大概看了一下,id主鍵含有字母,然後有想起了UUID為字串…

在這裡插入圖片描述

解決:

將id型別改為Long,主鍵策略改為ASSIGN_ID(雪花演算法),測試成功!

在這裡插入圖片描述

轉載請註明來源,謝謝