您的位置:首页 > 数据库 > Oracle

Hibernate为Oracle自动创建表且主键自增

2011-03-21 22:56 357 查看
转自http://hua04104.javaeye.com/blog/669104

1.注意:实体类映射表字段时不要使用oralce关键字,否则不能映射成功。

2.步骤:

(1)往oralce里建一个sequence:

Sql代码
create  sequence  seq_id_supervision
minvalue 1
start with  1
increment by  1




create sequence seq_id_supervision
minvalue 1
start with 1
increment by 1


注:如果多个表要映射自增长主键,每个表要建一个sequence。

(2)model映射配置:

Xml代码




<
id

name
=
"id"
>

<
generator

class
=
"sequence"
>

<
param

name
=
"sequence"
>

seq_id_letter

</
param
>

</
generator
>

</
id
>

<id name="id">
<generator class="sequence">
<param name="sequence">
seq_id_letter
</param>
</generator>
</id>


(3)Hibernate映射文件配置:

Xml代码




<
hibernate-configuration
>

<
session-factory
>

<
property

name
=
"hibernate.connection.driver_class"
>

oracle.jdbc.driver.OracleDriver

</
property
>

<
property

name
=
"hibernate.connection.url"
>

jdbc:oracle:thin:@localhost:1521:jf

</
property
>

<
property

name
=
"hibernate.connection.username"
>
jf
</
property
>

<
property

name
=
"hibernate.connection.password"
>
jf
</
property
>

<
property

name
=
"hibernate.dialect"
>

org.hibernate.dialect.OracleDialect

</
property
>

<
property

name
=
"hibernate.show_sql"
>
true
</
property
>

<
property

name
=
"hibernate.hbm2ddl.auto"
>
update
</
property
>

<
property

name
=
"hibernate.cache.provider_class"
>

org.hibernate.cache.HashtableCacheProvider

</
property
>

<
mapping

resource
=
"com/chinasoft/jfb/model/LetterInformation.hbm.xml"

/>

</
session-factory
>

</
hibernate-configuration
>

<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">
oracle.jdbc.driver.OracleDriver
</property>
<property name="hibernate.connection.url">
jdbc:oracle:thin:@localhost:1521:jf
</property>
<property name="hibernate.connection.username">jf</property>
<property name="hibernate.connection.password">jf</property>
<property name="hibernate.dialect">
org.hibernate.dialect.OracleDialect
</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="hibernate.cache.provider_class">
org.hibernate.cache.HashtableCacheProvider
</property>
<mapping resource="com/chinasoft/jfb/model/LetterInformation.hbm.xml" />
</session-factory>
</hibernate-configuration>


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: