当数据库主键不是标识时,想要由程序自己控制主键,hibernate bean的映射应该写成:@GeneratedValue(strategy = GenerationType.AUTO)
查阅资料后,整理如下:
public enum GenerationType{
TABLE, //使用一个特定的数据库表格来保存主键。
SEQUENCE, //根据底层数据库的序列来生成主键,条件是数据库支持序列。
IDENTITY, //主键由数据库自动生成(主要是自动增长型)
AUTO //主键由程序控制。
}

本文介绍了Hibernate中四种主键生成策略:使用特定表生成主键(TABLE)、利用数据库序列生成主键(SEQUENCE)、数据库自增(IDENTITY)及程序控制主键(AUTO)。对于希望由程序控制主键的情况,提供了相应的注解配置。
630

被折叠的 条评论
为什么被折叠?



