2012-12-04 1 views
11

jpa에서 문자열 id를 구현하는 가장 쉬운 방법은 무엇입니까? 지금까지 내가 무엇을문자열 id 생성기

@Id 
@GeneratedValue 
private int id; 

과 내가 가지고 싶은 것은

@Id 
@GeneratedValue 
private String id; 

같은 것입니다하지만이처럼 사용하는 경우,이 ID를 생성 긴 정수를 생성 '가져 , 짧은 '.

답변

17

이 같은 자바의 UUID를 만들 수 있습니다

@Id @GeneratedValue(generator="system-uuid") 
@GenericGenerator(name="system-uuid", strategy = "uuid") 
private String myId; 

Checkout this blogpost for details.

당신 경우 :

UUID.randomUUID().toString(); 

아니면 JPA는 Hibernate가하는 것처럼, 당신이 사용할 수있는, 그것을 지원하는 경우

Google은 "JPA UUID"에 대해 많은 대안이 있습니다. 당신은 EclipseLink를 사용하는 경우, 당신은 @UuidGenerator을 사용할 수 있습니다

+0

블로그에 대한 링크는 홈 페이지로 이동합니다. 제거해야합니다. –