问题描述:
问题解答:
oracle都用sequence
可以直接用native,hibernate会根据底层数据库自行判断采用sequence。
<id name="id" type="long" column="ID">
<generator class="native"/>
</id>
或直接用sequence
<generator class="sequence">
<param name="sequence">user_id_sequence</param>
</generator>
这种情况首先要先在数据库中建立了user_id_sequence的序列
oracle想设置自增长需要用到序列。
用hibernate去做的话。
比如想让id自增长。
第一,建表的时候id设置成主键;
第二,映射的时候选择Id Generator选择sequence;
第三,修改*.hbm.xml文件id的相应位置为:
<id name="ID" type="java.lang.Long">
<column name="ID" precision="10"
<generator class="sequence">
<param name="sequence">ID</param>
</generator>
</id>
修改*.hbm.xml文件id的相应位置为:
<id name="id" column="id" unsaved-value="null">
<generator class="native" />
</id>
用mysql最简单了