Hibernate 主键概述(二)

★increment

          < id  name ="id"  type ="integer" >
             
< column  name ="id" >
             
</ column >
             
< generator  class ="increment" ></ generator >
         
</ id >

1.由hibernate本身维护,适用于所有的数据库。

2.不适合多线程并发更新数据库,适合单一进程访问数据库。不能用于群集环境

★idetify

          < id  name ="id"  type ="integer" >
             
< column  name ="id" >
             
</ column >
             
< generator  class ="identify" ></ generator >
         
</ id >

1.与底层数据库有关,要求数据库支持identify,如MySQL中是auto_increment,SQL Server中是Identify.支持的数据库有MySQL,SQL Server,DB2,Sybase和HypersonicSQL.

2.无需Hibernate和用户的干涉,使用较为方便,但不便于在不同的数据库之间移植程序。

★sequence

          < id  name ="id"  type ="integer" >
             
< column  name ="id" >
             
</ column >
             
< generator  class ="sequence" >
                 
< param  name ="sequence" > mySequence </ param >
             
</ generator >
         
</ id >

1.需要底层数据库的支持序列,支持序列的数据库有DB2,PostgreSQL,Oracle,SAPDB等。

2.在不同的数据库之间移植程序,特别从支持序列的数据库移植到不支持序列的数据库时需要修改配置文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值