3
我使用Hibernate 4來使用映射到Postgres數據庫。在做映射之前,我創建了第一個Java實體。然後,我使用java類從我的實體生成sql腳本。這裏是我的實體:Hibernate 4和Postgres:如何爲每個表創建一個序列?
用戶實體
@Entity
@Table(name="myusers")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@Column(name="fistname")
private String firstName;
@Column(name="lastName")
private String lastName;
....
}
項目實體
@Entity
@Table(name="projects")
public class Project {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int id;
@Column(name="title")
private String title;
@Column(name="description")
private String description;
..
}
我注意到@GeneratedValue(strategy = GenerationType.AUTO)
產生的表myusers和項目相同的序列。如果我在myusers表上創建第一條記錄,id將有「1」作爲值,然後當我在表項目中創建第一條記錄時,此記錄的id = 2。他們使用兩個相同的序列。 我想知道我不能修改我的實體來指定Hibernate爲每個表創建一個序列。
可能重複:簡述如何@GeneratedValue工程](http://stackoverflow.com/questions/11788483/hibernate-rundown-on-how-generatedvalue-works) –