1
我希望爲成員編號提供唯一的列。用Hibernate/JPA做這件事的最好方法是什麼?休眠JPA:具有5位整數的唯一列
生成可用作成員編號的唯一整數組合的最佳方式是什麼?
EDIT
@Generated(GenerationTime.INSERT)
@Column(insertable = false)
private int membernumber;
我希望爲成員編號提供唯一的列。用Hibernate/JPA做這件事的最好方法是什麼?休眠JPA:具有5位整數的唯一列
生成可用作成員編號的唯一整數組合的最佳方式是什麼?
EDIT
@Generated(GenerationTime.INSERT)
@Column(insertable = false)
private int membernumber;
我研究的話題一下,發現JPA規範允許@GeneratedValue非ID列,但Hibernate不。
JPA or Hibernate to generate a (non primary key) column value, not starting from 1
你可以在你的數據庫的服務保存實體之前使用INSERT觸發器或產生它的手。那個鏈接對此有一個很好的討論。
希望它有幫助。
感謝您的回覆!問題的哪一部分不清楚?也許我可以澄清,如果有必要,你可以優化你的答案。基本上,我有一張儲存會員的桌子。該表具有主鍵。不過,我也想爲每個成員設定一個唯一的成員編號。有沒有一種方法來實現一個計數器或者什麼,從10000開始,然後只是遞增? – user3629892
我想我知道了,我以爲你想爲每個註冊表提供一個獨特的隨機值。在這種情況下,您可以在列中使用@Generated,並將數據庫更改爲從10000開始自動遞增該值(Sequence for Postgres,auto_increment for MySQL)。這裏有一個很好的例子:http://www.concretepage.com/hibernate/example-generated-hibernate –
你好!我無法讓它工作。查看我的編輯:我收到列沒有默認值的錯誤。 – user3629892