2017-07-13 4 views
1

私が達成しようとしているのは、DB挿入時に自動的に割り当てられるUUIDを生成することです。 id値を生成する "id"という名前の主キー列と同様です。春のブート時にHibernateを使って自動UUIDを生成する方法

@Id 
@GeneratedValue(strategy = GenerationType.AUTO) 
@Column(nullable = false) 
private Long id; 


@GeneratedValue(generator = "uuid2") 
@GenericGenerator(name = "uuid2", strategy = "uuid2") 
@Column(name = "uuid", columnDefinition = "BINARY(16)") 
private UUID uuid; 

しかしときDBインサートが行われます。

モデル値は次のようになります。 「uuid」は空です。

お願いします。そして私が明らかに愚かな質問をしているなら、私は申し訳ありません。

+0

あなたのUUIDクラスを投稿してください。 – fg78nc

+1

'@ GeneratedValue'などは' @ Id'フィールドでのみ使用され、他のフィールドでは無視されます。 –

答えて

1

お試しいただけますか?

@Id 
    @GeneratedValue(generator = "uuid2") 
    @GenericGenerator(name = "uuid2", strategy = “org.hibernate.id.UUIDGenerator”, 
    ) 
    @Column(name = "id", columnDefinition = "BINARY(16)") 
    private UUID id; 
関連する問題