hibernate主键生成策略总结

主键生成策略:
    针对Oracle:
        assigned(自己指定主键),
        sequence(在数据库中用序列来维护),如果在使用的时候  没有显示指定sequence的名称的时候  
            所有的表共用一个序列,如果自己显示指定的名称,则hibernate会使用我们给定的序列
            (如果数据库中有对应的序列则直接使用,否则创建一个新的序列)
        native:hibernate默认会生成一个hibernate_sequence,

    Mysql:native,identity

    UUID:由系统生成一个唯一的字符串作为主键

    联合主键
        主键作用在多个字段上,并且该类要实现序列化接口
        <composite-id>
                <key-property name="firstName" column="first_name"></key-property>
                <key-property name="lastName" column="last_name"></key-property>
            </composite-id>
        
        还可以将要进行联合的字段单独放到一个类里面  并且实现序列化接口
        <composite-id name="personName" class="PersonName">
                <key-property name="firstName" column="first_name"></key-property>
                <key-property name="lastName" column="last_name"></key-property>
            </composite-id>

    组件映射:
        <component name="address" class="Address">
                <property name="province"></property>
                <property name="city"></property>
                <property name="area"></property>
            </component>

    基本数据类型对应:
        
        int或Integer   <---->   number(10)
        Float或Double     <----> FLOAT
        java.sql.Date  <---->  DATE
        java.util.Date <----> DATE

        String  <---> varchar2

        BigDecimal <----> number
        
       
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值