1.首先需要在实体类前面申明一个Sequence如下:
方法:@SequenceGenerator(name="SEQ_Name",sequenceName="SEQ_DB_Name")
参数注意:SEQ_Name:表示为申明的这个Sequence指定一个名称,以便使用
SEQ_DB_Name:表示为数据库中的Sequence指定一个名称。两个参数的名称可以一样。
2.然后使用@GeneratedValue注解
方法:@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SEQ_Name")
参数:strategy:固定为GenerationType.SEQUENCE
Generator:在实体类前面申明的sequnce的名称
方法:@SequenceGenerator(name="SEQ_Name",sequenceName="SEQ_DB_Name")
参数注意:SEQ_Name:表示为申明的这个Sequence指定一个名称,以便使用
SEQ_DB_Name:表示为数据库中的Sequence指定一个名称。两个参数的名称可以一样。
- @Entity
- @SequenceGenerator(name="teacherSEQ",sequenceName="teacherSEQ_DB")
- public class Teacher {
- ……
- }
2.然后使用@GeneratedValue注解
方法:@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SEQ_Name")
参数:strategy:固定为GenerationType.SEQUENCE
Generator:在实体类前面申明的sequnce的名称
- @Entity
- @SequenceGenerator(name="teacherSEQ",sequenceName="teacherSEQ_DB")
- public class Teacher {
- private int id;
- @Id
- @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="teacherSEQ")
- public int getId() {
- return id;
- }}