Hibernate映射文件(Entity.hbm.xml)

hbm全称:Hibernate Mapping(Hibernate映射)





<hibernate-mapping package="com.me.relation.entity">
    
    <class name="Student" table="student">
        
        
        <id name="id">
            
            <generator class="identity">generator>
        id>
        <property name="joinTime" column="join_time">property>
        <property name="name">property>
        <property name="sex">property>
        <property name="age">property>
    class>
hibernate-mapping>

主键生成策略详解:

increment, 数字类型的自增。(用于单线程,或线程安全的)
原理:当前表最大的id值,+1,然后插入时加进去

identity,数字类型的自增。依赖于数据库底层的实现。
原理:数据库底层主键的auto_increament

uuid,生成32位的16进制的一串没有任何意义的唯一编码。
原理:框架生成,然后插入时加进去

guid ,用书mySql或者Sql service数据中生成字符串类型的唯一标识。
原理:用数据库自带的uuid函数

native: 依赖于数据库底层的实现。数据库默认的主键生成策略是什么,他就是什么。
原理:数据库默认(auto_increament)

assigned:手动分配。
原理:手动加

foreign : 使用外键做主键。(比较少见,一般只会一对一当中出现)
原理:获取外键的值,插入到表中

你可能感兴趣的:(java,hibernate)