一般来说,实体类的主键很容易就可以实现自动增长,不管是UUID,还是Integer。
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID uuid;
//
//或者
//
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
(错误做法)——但是如果两个同时存在的时候,将上面两个合起来以后,却只能使一个自增(主键自增)。
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID uuid;
@Column
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
所以想要两个同时自增就要寻求其他方法!!
注解@Column中有个属性叫做columnDefinition,在这里可以写sql语句!所以让两个同时自增的方法是——
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private UUID uuid;
@Column(columnDefinition = "bigint(20) not null UNIQUE key auto_increment")
private Integer id;
这里写的sql语句只是一个例子,根据个人实际情况自己更改~