• Hibernate----Hibernate小配置


    在Hibernate中,映射文件通常以“hbm.xml”作为后缀。位置是在实体包下,是实体类到数据库表的一个映射信息

    <?xml version='1.0'  encoding='utf-8'?>
    
    <!DOCTYPE hibernate-mapping PUBLIC 
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    
    <hibernate-mapping package="cn.happy.entity">
        <class name="Student" table="Student">
            <id name="id" column="id">
                <generator class="native"></generator>
            </id>
            <property name="name"  column="name"/>
                
        </class>
    </hibernate-mapping>   

    class : 定义一个持久化类的映射信息:

      name :表示持久化类的全限定名,也就是实体类的名称

      table :表示持久化类映射到数据库的表名

    id : 表示持久化类的OID和表主键的映射

      name :表示持久化类的属性的名称,和属性的访问器相匹配。

      column :表示持久化类属性对应数据库表中的字段名称。

          type :持久化类属性的类型,可以不写。

      generator :ID元素的子元素,用于生成主键的策略。

        class :用来指定具体的生成策略

        param :用来专递参数

    常用的主键生成策略:

    (1)increment :对类型为 long、short 或 int 的主键,以自动增长的方式生成主键的值 。主键按数值顺序递增,增量为1。

    (2)identity : 对如SQL Server、DB2、MySQL 等支持标识列的数据库,可使用该主键生成策略生成自动增长主键,但要在数据库中将该主键设置为标识列。

    (3)sequence :对如Oracle、DB2 等支持序列的数据库,可以使用该主键生成策略生成自动增长主键,通过子元素param 传入数据库中序列的名称。

    (4)native : 由 HIbernate 根据底层数据库自行判断采用何种主键生成策略,即由使用的数据库生成主键的值。

    (5)assigned :主键由应用程序负责生成,无需Hibernate 参与。

    property : 定义持久化类中属性和数据库中的表的字段的对应关系。

      name : 表示持久化类属性的名称,和属性的访问器相匹配。

      type : 表示持久化类属性的类型。

      column : 表示持久化类属性对应的数据库表字段的名称,也可以在子元素column中指定。

      column元素: 用于指定其父元素代表的持久化类属性所对应的数据库表中的字段。

        name : 表示字段的名称

        length : 表示字段长度

        not-null :设定是否可以为null,值为true表示不能为null。

      

  • 相关阅读:
    spring的@Transactional注解详细用法
    解决:No qualifying bean of type [org.springframework.jdbc.core.JdbcTemplate] found for dependency
    SpringBoot2 启动报错 Failed to auto-configure a DataSource
    SpringBoot2 全局异常处理
    Intellij IDEA 将工程转换成maven工程 详解
    js性能优化
    JDK故障处理工具箱
    编写高性能的jquery代码
    maven工程解决jar包冲突依赖问题
    spring aop中xml配置文件中标签和属性对应的类
  • 原文地址:https://www.cnblogs.com/szj-ang/p/6607949.html
Copyright © 2020-2023  润新知