1assigned让程序员指定主键,不推荐
2sequence 要数据库支持sequence ,mysql不可以用这个
3increment自动递增,由hibernate管理主键在表里面找一个最大的id,然后在最大的基础上+1递增
4native让hibernate自己决定
5identity 由数据库管理主键,表要设置成autoincrement ,和increment类似,但是前者是由hibernate管理主键,后者是由数据库管理主键
一般设置成identity 算了
设置成AUTO是让程序管理主键
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
设置成identity就是数据库管理主键
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
但是我发现,这2种配置都要求数据库表要设置成自动递增