3 回答

TA貢獻2021條經驗 獲得超8個贊
如下進行:
@Id
@GenericGenerator(name="kaugen" , strategy="increment")
@GeneratedValue(generator="kaugen")
@Column(name="proj_id")
public Integer getId() {
return id;
}
您可以使用任何任意名稱代替kaugen。效果很好,我可以在控制臺上看到以下查詢
Hibernate: select max(proj_id) from javaproj
Hibernate: insert into javaproj (AUTH_email, AUTH_firstName, AUTH_lastName, projname, proj_id) values (?, ?, ?, ?, ?)

TA貢獻1806條經驗 獲得超8個贊
Hibernate定義了五種類型的標識符生成策略:
AUTO-根據基礎數據庫,標識列,序列或表
TABLE-持有ID的表
IDENTITY -身份列
序列 -序列
身份副本 –身份是從另一個實體復制的
使用表格的例子
@Id
@GeneratedValue(strategy=GenerationType.TABLE , generator="employee_generator")
@TableGenerator(name="employee_generator",
table="pk_table",
pkColumnName="name",
valueColumnName="value",
allocationSize=100)
@Column(name="employee_id")
private Long employeeId;
添加回答
舉報