hibernate配置文件详解

hibernate配置文件

hibernate的配置文件在hibernate.cfg.xml文件中编写

xml 复制代码
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <!-- 配置连接数据库信息 -->
        <property name="connection.url">jdbc:mysql://localhost:3306/studyhibernate</property>
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.username">root</property>
        <property name="connection.password">123456</property>

      	<!-- JDBC connection pool 数量 -->
        <property name="connection.pool_size">1</property>
        <!-- 配置hibernate的基本信息 -->
        <!-- hibernate方言 -->
        <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
        <!-- 执行操作时是否在控制台打印 -->
        <property name="show_sql">true</property>
        <!-- 是否对SQL进行格式化 -->
        <property name="format_sql">true</property>
        <!-- 指定自动生成数据表的策略 -->
        <!--
            取值可以有create、update、create-drop、validate
            - create  根据.hbm.xml文件来生成数据表,但是每次运行都会删除上一次的表,重新生成表
            - create-drop 根据.hbm.xml文件生成表,sessionFactory关闭,表会自动删除
            - update  根据.hbm.xml文件生成表,但若.hbm.xml文件和数据库中对应的数据表的表结构不同,hibernate会跟新数据表结构,但不会删除已有的行和列
            - validate  和数据库的表进行比较,若.hbm.xml文件中的列在数据表中不存在,则抛出异常

        -->
        <property name="hibernate.hbm2ddl.auto">update</property>
        <!-- DB schema will be updated if needed -->
        <!-- <property name="hibernate.hbm2ddl.auto">update</property> -->
      	<!-- session管理方式 -->
        <property name="current_session_context_class">thread</property>

        <!-- 启用二级缓存 -->
        <property name="cache.use_second_level_cache">false</property>
        <!-- 二级缓存指定第三方插件 -->
        <!--<property name="hibernate.cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>-->
        <!-- 开启查询缓存 -->
        <!--<property name="cache.use_query_cache">true</property>-->

        <!--<property name="current_session_context_class">thread</property>-->
        <!-- 指定关联的映射文件 -->
        <mapping resource="User.hbm.xml"/>
        <mapping resource="Customer.hbm.xml"/>
        <mapping resource="Order.hbm.xml"/>
        <mapping resource="Department.hbm.xml"/>
        <mapping resource="Manager.hbm.xml"/>
        <!-- 配置哪个类使用二级缓存 -->
        <!--<class-cache class="com.zhanghe.study.model.User" usage="read-write"/>
        <collection-cache collection="com.zhanghe.study.model.many2one.Customer.orderList" usage="read-write"/>
        <class-cache class="com.zhanghe.study.model.many2one.Order" usage="read-write"/>-->
    </session-factory>
</hibernate-configuration>

zhhll.icu/2020/框架/hib...

本文由mdnice多平台发布

相关推荐
你不是我我2 小时前
【Java 开发日记】HTTP3 性能更好,为什么内网微服务依然多用 HTTP2?HTTP2 内网优势是什么?
java·开发语言·微服务
雪碧聊技术2 小时前
大模型爆火!Java后端如何抓住Agent全栈开发的风口
java·大模型·agent·全栈开发
逻辑驱动的ken3 小时前
Java高频面试场景题25
java·开发语言·深度学习·面试·职场和发展
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题】【Java基础篇】第32题:Java的异常处理机制是什么
java·开发语言·后端·面试
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ5 小时前
通过java后端代码来实现给word内容补充格式文本内容控件,以及 设置控件的标记和标题
java·c#·word
無限進步D6 小时前
Java 面向对象高级 接口
java·开发语言
逸Y 仙X7 小时前
文章二十七:ElasticSearch ES查询模板(Search Template)高效复用实战
java·大数据·数据库·elasticsearch·搜索引擎·全文检索
二哈赛车手7 小时前
新人笔记---Spring AI的Advisor以及其底层机制讲解(涉及源码),包含一些遇见的Spring AI的Advisor缺陷问题的解决方案
java·人工智能·spring boot·笔记·spring
AC赳赳老秦7 小时前
接口测试自动化:用 OpenClaw 对接 Postman,实现批量回归测试、测试报告自动生成与推送
java·人工智能·python·算法·elasticsearch·deepseek·openclaw