hibernate *.hbm.xml文件的配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yhld456/article/details/52563071

hibernate *.hbm.xml文件的配置

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!-- package声明pojo包所在的包,如果不写在class中需要指明pojo类所在的包 
    schema指数据库模式,一个模式下可以有多张表,不同的数据库不一样
-->
<hibernate-mapping package="com.pojo">
    <!-- 
        class指映射一个pojo类
        它所映射的类有以下几个特征:
            1、提供公共的无参构造方法-通过反射产生对象
            2、属性用private修饰,并且生成对应的get/set方法
            3、类不能用final来修饰,hibernate会产生一个代理类,代理类可以通过类(cglib)和接口产生,final不能被继承
            4、类需要指明标识-id,默认情况下是指主键
        name表示pojo类的类名
        table表示pojo类对应数据库中的表名,不指明的话默认name=table
     -->
    <!-- 实体类与表名 -->
    <class name="User" table="user">
        <!-- id表示实体类的标志
            对应数据库表中的主键 
            name指实体类的标识属性名
            column表示对应数据库表的列名,如果不写则数据库中的列名和属性名一直
            length表示数据库表中,对应数据类型的长度,如果不写有面人的长度
            type表示类型,如果不写,hibernate可以找到对应pojo类的属性的类型,比如string,java.lang.Integer
            -->
        <id name="id" column="id" >
            <!-- 主键生成策略
                increment:集群下不要用,用于long,short或者int,oracle不能用,它先查最大的id,然后+1
                identity:对于DB2,mysq,mssql,sybase内置标识字段提供支持,返回的标识符是long,short或者int类型的
                sequence:在支持序列的数据库中使用,在db2,postgreSql,oracle,sqp db,mckoi中使用序列sequence,而在Interbase中使用生成器generator,返回的标识符是long,short或者int
                    oracle<generator class="sequence">
                    <param name="sequence">user_seq</param>
                    </generator>
                uuid:用一个128-bit的UUID算法生成字符串类型的标识符,32位的16进制的字符串
                native:根据底层数据库的能力选择使用identity,sequence或者hilo中的一个
                assigned:自己指定
             -->
            <generator class="native"></generator>
        </id>
        <!-- 实体(pojo)类的属性 
            name:pojo类属性名称,区分大小写
            <property name="name">
                <column name="name"></column>和上面的一样
            </property>
        -->
        <property name="name"/>
        <property name="pwd"/>  
    </class>
</hibernate-mapping>

猜你喜欢

转载自blog.csdn.net/yhld456/article/details/52563071
今日推荐