字符串id生成器

Car*_*981 12 jpa

在jpa中实现字符串id的最简单方法是什么?到目前为止,我所拥有的是

@Id
@GeneratedValue
private int id;
Run Code Online (Sandbox Code Playgroud)

而我想拥有的是什么

@Id
@GeneratedValue
private String id;
Run Code Online (Sandbox Code Playgroud)

但如果我像这样使用它,我得到'这个id生成器生成长整数,短'.

Ale*_*lex 20

您可以像这样从Java创建UUID:

UUID.randomUUID().toString();
Run Code Online (Sandbox Code Playgroud)

或者,如果您的JPA支持它,就像Hibernate一样,您可以使用:

@Id @GeneratedValue(generator="system-uuid")
@GenericGenerator(name="system-uuid", strategy = "uuid")
private String myId;
Run Code Online (Sandbox Code Playgroud)

查看此博客文章了解详细信息.

如果你谷歌为"JPA UUID"有很多选择.