您的位置:首页 > 其它

hibernate主键生成策略总结

2016-08-17 09:51 218 查看
主键生成策略:

    针对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

        

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