@GeneratedValue

来源:互联网 发布:蓝月传奇淘宝礼包 编辑:程序博客网 时间:2024/06/11 21:01

@GeneratedValue

@sunRainAmazing

hibernate注解 @GeneratedValue提供主键值的生成策略的规范。所述@GeneratedValue注释可以应用于实体的主键属性或字段或与结合@Id注释。@GeneratedValue注释的使用只需要支持简单的主键。 使用 注释@GeneratedValue不支持派生主键。 两个属性① generator  ---  java.lang.String    在指定的使用(可选)主键生成器的名称SequenceGenerator 或TableGenerator注解。 ② strategy --- GenerationType      (可选)持久性提供程序必须用于生成注释实体主键的主键生成策略。    GenerationType  的值。 Strategy - 表示主键生成策略,取值有:GenerationType.AUTO - 根据底层数据库自动选择(默认),若数据库支持自动增长类型,则为自动增长。GenerationType.INDENTITY - 根据数据库的Identity字段生成,支持DB2MySQLMSSQL  - ServerSyBaseHyperanoicSQL数据库的Identity  类型主键。GenerationType.SEQUENCE - 使用Sequence来决定主键的取值,适合OracleDB2等支持Sequence的数据库, - 一般结合@SequenceGenerator使用。 - -- 注:(Oracle没有自动增长类型,只能用Sequence)GenerationType.TABLE   -  使用指定表来决定主键取值,结合@TableGenerator使用。例如:    @Id    @GeneratedValue(strategy =                           GenerationType.INDENTITY)     private int id;