• 5 -- Hibernate的基本用法 --6 深入Hibernate映射


      Hibernate提供三种方式将POJO变成PO类:

        1. 使用持久化注解(以JPA标准注解为主,如果有一些特殊要求,则依然需要使用Hibernate本身提供的注解)。

        2. 使用JPA2 提供的XML配置描述文件(XML deployment descriptor),这种方式可以让Hibernate的PO类与JPA实体类兼容。

        3. 使用Hibernate传统的XML映射文件(*.hbm.xml文件的形式)。

      对于Hibernate PO类而言,通常可以采用如下两个注解来修饰它:

        1. @Entity : 被该注解修饰的POJO就是一个实体。使用该注解时可指定一个name属性,name属性指定该实体类的名称。默认以该类的类名作为实体类的名称。

        2. @Table : 该注解指定持久化类锁映射的表。

          @Table 注解可指定的属性:

            1. catalog:(非必须)用于设置将持久化类所映射的表放入制定的catalog中。如果没有指定该属性,数据表将放入默认的catalog中。

            2. indexs:(非必须)为持久化类所映射的表设置索引。该属性值时一个@Index注解数组。

            3. name:(非必须)设置持久化类所映射的表的表名。如果没有制定该属性,那么该表的表名将与持久化类的类名相同。

            4. schema : (非必须)设置将持久化类所映射的表放入指定的schema中。如果没有指定该属性,数据表将放入默认的schema中。

            5. uniqueConstraints:(非必须)为持久化类所映射的表设置唯一约束。该属性的值是一个@UniqueConstraint注解数组。

              @UniqueConstraint用于数据表定义唯一约束。使用该注解可以指定唯一的属性:columnNames。columnNames的值是一个字符串数组,每个字符串元素代表一个数据列。

              @Index用于数据表定义索引。使用该注解可以指定columnList、name、unique等属性。

                1.columnList

                2. name

                3. unique

        3. @Access

          AccessType.PROPERTY

          AccessType.FIELD

        4. @Proxy

        5. @DynamicInsert : 指定用于出入记录的insert语句是否在运行时动态生成,并只插入那些非空字段。该属性的值默认时false。开启该属性将导致Hibernate需要更多时间来生存SQL语句。

        6. @DynamicUpdate : 指定用于更新记录的update语句是否在运行时动态生成,并只更新那些改变过的字段。该属性的值默认时false。开启该属性将导致Hibernate需要更多的时间来生成SQL语句。

    啦啦啦

  • 相关阅读:
    HereDOC案例
    array_number
    CodeMirror---实现关键词高亮
    webstorage的使用
    vue.js--绑定方法到window对象
    docker部署服务实现文件上传到本地问题解决
    ES6之map与set
    JAVA生成视频缩略图的两种方式
    vuex状态管理
    ELK日志分析平台
  • 原文地址:https://www.cnblogs.com/ClassNotFoundException/p/7523568.html
Copyright © 2020-2023  润新知