在@id下面,使用
mysql使用:
@GeneratedValue(strategy = GenerationType.IDENTITY)
数据库自动选择:
@GeneratedValue(strategy = GenerationType.AUTO)
如果使用Table_Generator则可以跨数据库平台。
hibernate建立一个表为多个表提供主键值,这个主键值是integer类型的。它的用法是在实体bean前面定义表的名字,列名,以及记录值。用法,参照马士兵的视频截图如下:
@javax.persistence.TableGenerator( name="生成器名", table="生成器表名", pkColumnName = "生成器表名的列名", valueColumnName = "生成器表名的列名" pkColumnValue="待生产主键的表名", allocationSize=主键值的跨度 )
然后,在getId()方法前面,显示声明Id生成器:
@Id //@GeneratedValue(strategy = GenerationType.AUTO) @GeneratedValue(strategy = GenerationType.TABLE,generator="Teacher_Generator") public int getId() { return id; }