• 04-Hibernate的常见配置


    1.核心配置

    核心配置有两种方式进行配置:

        •  属性文件的配置:

    * hibernate.properties

    * 格式:

    * key=value

    * hibernate.connection.driver_class=com.mysql.jdbc.Driver

    ***** 注意:没有办法在核心配置文件中加载映射文件.(必须手动编码的方式进行加载.)

     

        • XML格式文件配置:

    * hibernate.cfg.xml

    * 格式:

    <property name="hibernate.connection.username">root</property>

     

    核心配置中:

        • 1.必须的配置:

    * 连接数据库4个基本参数:

    hibernate.connection.driver_class  连接数据库驱动程序

    hibernate.connection.url   连接数据库URL

    hibernate.connection.username  数据库用户名

    hibernate.connection.password   数据库密码

     

    * Hibernate的方言:

    hibernate.dialect   操作数据库方言

     

        • 2.可选的配置:

    hibernate.show_sql  true 在控制台上输出SQL语句

    hibernate.format_sql  true  格式化控制台输出的SQL语句

    hibernate.connection.autocommit  true 事务是否自动提交

    hibernate.hbm2ddl.auto   create/create-drop/update/validate

    * create         :每次执行的时候,创建一个新的表.(如果以前有该表,将该表删除重新创建.) 一般测试的时候的使用.

    * create-drop    :每次执行的时候,创建一个新的表,程序执行结束后将这个表,删除掉了. 一般测试的时候使用.

    * update         :如果数据库中没有表,创建一个新的表,如果有了,直接使用这个表.可以更新表的结构.

    * validate       :会使用原有的表.完成校验.校验映射文件与表中配置的字段是否一致.不一致报错.

     

        • 3.映射的配置:
    • 在核心配置文件中加载映射文件:

    * <mapping resource="cn/itcast/hibernate3/demo1/Customer.hbm.xml" />

    • 使用手动编码的方式进行加载 :

     

    映射文件的配置:

    ORM:对象和关系映射.

    * 配置Java对象与表映射.

        • * 配置类与表的映射:

    * name:类的全路径:

    * table:表的名称:(可以省略的.使用类的名称作为表名.)

    <class name="cn.itcast.hibernate3.demo1.Order" table=”orders”>

     

        • * 配置普通属性与字段映射:

    <property name="name" column="name" type="string" length=”20”/>

    type:三种写法

                * Java类型      :java.lang.String

                * Hibernate类型 :string

                * SQL类型       :不能直接使用type属性,需要子标签<column>

                    * <column name="name" sql-type="varchar(20)"/>

     

        • * 配置唯一标识与主键映射:

    * 一个表中只有一个主键的形式:

    <id name=”id” column=”id”>

    * 生成策略:

     

        • * 一个表对应多个主键形式:(复合主键:)---了解.

    * <composite-id></composite-id>

     

        • * 关联关系:
        • * 命名SQL:

    <query name="findAll">

        from Customer

    </query>

     

    <sql-query name="sqlFindAll">

        select * from customer

    </sql-query>

     

  • 相关阅读:
    Android笔记(adb命令--reboot loader)
    Android笔记(预安装APK)
    Linux驱动学习(编写一个最简单的模块)
    const关键字与指针
    C++函数重载遇到了函数默认参数情况
    uboot环境变量分析
    ftp服务
    Samba服务
    mariadb_2 单表的增删改查
    mariadb_1 数据库介绍及基本操作
  • 原文地址:https://www.cnblogs.com/1963942081zzx/p/6516599.html
Copyright © 2020-2023  润新知