一、JPA中的常用注解:
1、@Entity:标记在类名上面,作为实体类的标识;
2、@Table:当实体类与其映射的数据库表名不相同时需要使用 @Table 标注说明,该标注与 @Entity 标注并列使用,置于实体类声明语句之前,可写于单独语句行,也可与声明语句同行。
@Table 标注的常用选项是 name,用于指明数据库的表名。 @Table 标注还有一个两个选项 catalog 和 schema 用于设置表所属的数据库目录或模式,通常为数据库名。
uniqueConstraints 选项用于设置约束条件,通常不须设置;
3、@Id:设置对象表示符,标识的实体类的属性映射对应表中的主键;
4、@GeneratedValue:设置标识符的生成策略,常与@Id 一起使用。
参数:strategy 指定具体的生成策略:
方式一:@GeneratedValue(strategy=GenerationType.AUTO) 也是默认策略, 即写成@GeneratedValue也可;类似于 hibernate 的 native 策略,生成方式取决于底层的数据库。
方式二:@GeneratedValue(strategy = GenerationType.IDENTITY)指定“自动增长”策略,适用于 MySQL;