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;
添加回答
举报