Hibernate怎样把一个Oracle中的表的主键设置成自增,在MyEclipse中又怎样设置自增主键的生成策略?

发布时间:2024-05-16 23:25 发布:上海旅游网

问题描述:

问题解答:

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最简单了

热点新闻