Hibernate主键生成策略是用来指定如何生成实体的主键值的方法。Hibernate提供了几种主键生成策略,常用的有以下几种:
自增(GenerationType.IDENTITY):使用数据库的自增字段来生成主键值,适用于大多数数据库,如MySQL、SQL Server等。
序列(GenerationType.SEQUENCE):使用数据库的序列来生成主键值,适用于一些数据库,如Oracle、PostgreSQL等。
表(GenerationType.TABLE):使用一个专门的表来保存主键值的序列,适用于所有数据库。
UUID(GenerationType.UUID):使用UUID来生成主键,保证唯一性。
自定义(GenerationType.CUSTOM):使用自定义的生成策略来生成主键值。
可以通过在实体类的主键上添加@GeneratedValue(strategy = GenerationType.XXX)
注解来指定主键生成策略。Hibernate会根据指定的策略来生成主键值,并将其保存到数据库中。