您当前的位置: 首页 >  宝哥大数据 hibernate

Hibernate06_ID生成策略

宝哥大数据 发布时间:2017-08-26 14:54:13 ,浏览量:4

第一种native , id自增, 相当于primary key auto_increment;

Book实体类

package com.chb.model;

public class Book {
    private int id;
    private String name;
    private double price;

    public Book() {}

    public Book(int id, String name, double price) {
        super();
        this.id = id;
        this.name = name;
        this.price = price;
    }


    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getPrice() {
        return price;
    }
    public void setPrice(double price) {
        this.price = price;
    }



}

Book.hbm.xml





    
    
        
            
            
        
        
        
    

测试成功:

查看数据库, 可以发现id自动为1

二、生成策略为assign

修改Book.hbm.xml





    
    
        
            
            
        
        
        
    

使用DROP TABLE book_table 将数据库中的book_table删除

ID生成策略改为assigned, 第一次执行,ID自动为1

再次执行测试, 报如下错误。因为id需要开发人员自己指定。

ERROR: Duplicate entry '0' for key 'PRIMARY'

三、生成策略为uuid

Book.hbm.xml





    
    
        
            
            
        
        
        
    

将Book实体类的id改为String

package com.chb.model;

public class Book {
    private String id;
    private String name;
    private double price;

    public Book() {}

    public Book(String id, String name, double price) {
        super();
        this.id = id;
        this.name = name;
        this.price = price;
    }


    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getPrice() {
        return price;
    }
    public void setPrice(double price) {
        this.price = price;
    }



}

删除数据库中的book_table

测试

关注
打赏
查看更多评论

宝哥大数据

暂无认证

  • 4浏览

    0关注

    985博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录