Hibernate主鍵生成策略是用來指定如何生成實體的主鍵值的方法。Hibernate提供了幾種主鍵生成策略,常用的有以下幾種:
自增(GenerationType.IDENTITY):使用數據庫的自增字段來生成主鍵值,適用于大多數數據庫,如MySQL、SQL Server等。
序列(GenerationType.SEQUENCE):使用數據庫的序列來生成主鍵值,適用于一些數據庫,如Oracle、PostgreSQL等。
表(GenerationType.TABLE):使用一個專門的表來保存主鍵值的序列,適用于所有數據庫。
UUID(GenerationType.UUID):使用UUID來生成主鍵,保證唯一性。
自定義(GenerationType.CUSTOM):使用自定義的生成策略來生成主鍵值。
可以通過在實體類的主鍵上添加@GeneratedValue(strategy = GenerationType.XXX)
注解來指定主鍵生成策略。Hibernate會根據指定的策略來生成主鍵值,并將其保存到數據庫中。