开发环境:
DB: PostgreSQL
现象:主KEY是一个自增列,类型是serial 类型的字段。在用HIBERNATE插入时,总是覆盖以前的值,ID一直为0
问题所在: 配置文件出错
原来的配置文件
<id name="id" type="int">
<column name="id" />
<generator class="assigned" />
</id>
修正后
<id name="id" type="int">
<column name="id" />
<generator class="identity" />
</id>
这是官方的API解释,可以看到,如果利用数据自带的自增列,就要指定使用generator 标签指定identity
如果没有特别指定,默认就是assigned