我将使用Hibernate 4来进行与Postgres数据库的映射。在进行映射之前,我首先创建了Java实体。然后,我使用一个Java类从我的实体中生成SQL脚本。这是我的实体:
用户实体
项目实体
用户实体
@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表和projects表产生相同的序列。如果我在myusers表中创建第一条记录,其id将具有"1"的值,然后当我在projects表中创建第一条记录时,该记录的id将为2。它们都使用相同的序列。
我想知道如何不修改我的实体来指示Hibernate为每个表创建一个序列。