開發環境:
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