一般主键的配置:
- <id name="id">
- <!-- identity,使用数据库的自动增长,在保存时会忽略手工指定的主键值而由数据库生成
- 要求此属性要是数字类型
- <generator class="identity"/>
- -->
- <!--increment,对类型为long,short或into的主键,以自动增长的方式生成主键的值,主键按数值顺序递增,增量为1,适合所有数据库
- <generator class="increment"/>
- -->
- <!-- assigned,手工指定,适用mysql,sqlserver数据库
- <generator class="assigned"/>
- -->
- <!-- uuid,由Hibernate生成UUID并指定为主键值,要求此属性要是String型
- <generator class="uuid"/>
- -->
- <!--适用DB2,oracle数据库,通过指定序列号实现主键自增长
- <generator class="sequence"><param name="sequence">序列名</param></generator>
- -->
- <!-- native,根据底层数据库的能力选择 identity(mysql、sqlserver)、sequence(oracle) -->
- <generator class="native"/>
- </id>