@Id
@SequenceGenerator(name = "序列生成器名", sequenceName = "序列名")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "序列生成器名")
@Column(name = "ID", unique = true, nullable = false, insertable = true, updatable = false)
public Long getId() {
return id;
}
@GeneratedValue(strategy = GenerationType.SEQUENCE...
strategy的分类:AUTO,IDENTITY(oracle不支持),SEQUENCE(mySql不支持),UUID,NATIVE等。
参考博客:主键生成策略
以上引用博客的结论是:使用uuid,不依赖数据库,数据库可移植性强。(也有其它结论,是以数据量不大的条件下。故该结论需要更专业的资料引用)
目前知道的是,Oralce主键的生成策略上有两种:1,strategy = GenerationType.SEQUENCE。
2,代码生成。String uuid = UUID.randomUUID().toString(); (可新建一个public class idUtils,提供公用的方法):
前缀- 5c6cb723-b3c3-4fc9-be91-8e27608f5bee (uuid值)