休眠自动增量 ID

2022-08-31 10:36:56

我有一个j2ee应用程序,使用带有注释的休眠。如何注释pojo类中的Id字段以将其设置为自动增量或自动生成。在添加bean时,我是否将该字段保留在我的bean null中?


答案 1
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;

并在坚持时将其保留()。(如果您使用 / 包装器)null0nullIntegerLong

在某些情况下,策略解析为 rathen 而不是 or ,因此您可能希望手动将其设置为 or(取决于基础数据库)。AUTOSEQUENCEIDENTITYTABLEIDENTITYTABLE

似乎SEQUEM +指定序列名称对您有用。


答案 2

按以下步骤操作:-

@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 (?, ?, ?, ?, ?)

推荐