实体类主键自增id的注解

JPA的注解来定义实体的时候,使用@Id来注解主键属性即可。如果数据库主键是自增长的,需要在增加一个注解@GeneratedValue,即:

1     @GeneratedValue(strategy=GenerationType.IDENTITY)
2     @Id
3     private String id;

 

PS:@GeneratedValue注解的strategy属性提供四种值:

–AUTO: 主键由程序控制,是默认选项,不设置即此项。

–IDENTITY:主键由数据库自动生成,即采用数据库ID自增长的方式,Oracle不支持这种方式。

–SEQUENCE:通过数据库的序列产生主键,通过@SequenceGenerator 注解指定序列名,mysql不支持这种方式。

@Id
@SequenceGenerator(name = "SEQ", sequenceName = "SEQ_ATTR_ID", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ")
private Long attr_id;

–TABLE:通过特定的数据库表产生主键,使用该策略可以使应用更易于数据库移植。

你可能感兴趣的:(#,java框架,java)