您现在的位置是: 首页 >  个人博客日记 >  hibernate.cfg.xml配置详解 博客详情

hibernate.cfg.xml配置详解

请叫我菜鸟 2019-07-14 20:23 【Hibernate框架】 105次预览

简介在本篇文章开始之前,相信很多JavaWeb初学者跟笔者一样,心中总会有这样或者那样的疑问。1、为什么要学习框架?答:框架设计运用了很多的设计模式,在很大程度上来说,只要开发者遵循框架的使用准则,可以快速的提高开发效率。2、如何学习框架?答:(1)理解...

在本篇文章开始之前,相信很多JavaWeb初学者跟笔者一样,心中总会有这样或者那样的疑问。

1、为什么要学习框架?

答:框架设计运用了很多的设计模式,在很大程度上来说,只要开发者遵循框架的使用准则,可以快速的提高开发效率。

2、如何学习框架?

答:(1)理解框架的的原理/请求流程。(2)编写入门案例进一步理解框架。(3)注意框架细节,然后再深入学习。

本篇文章主要是对hibernate4框架的hibernate.cfg.xml配置文件进行详解。

一、hibernate.cfg.xml配置的作用。

(1)配置数据源信息,包括连接池的相关信息。

(2)配置hibernate框架常用的一些信息,如是否在控制台打印sql以及打印的sql是否进行格式化等。

(3)引入实体类与数据库之间关联关系的映射配置文件。

二、常见配置即配置说明

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
		"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
		"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- 这里就是hibernate配置 -->
<hibernate-configuration>
	<!-- 我们的配置都放在 session-factory标签 -->
    <session-factory>
    	<!-- 连接mysql的用户名 -->
    	<property name="hibernate.connection.username">root</property>
    	<!-- 连接mysql的密码  -->
    	<property name="hibernate.connection.password">hello</property>
    	<!-- 连接到mysql的url 
    		jdbc:mysql: jdbc是协议 mysql 子协议
    		localhost: 连接mysql的host名
    		3306: 连接到mysql的端口,默认是3306
    		tndb01: 数据库,事先我们要创建好
    	-->
    	<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/tndb01</property>
    	<!-- mysql的驱动名 -->
    	<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    	
    	<!-- 
    		hibernate.show_sql: 是否显示hibernate生成的sql,教学true,实际false
    		hibernate.format_sql: 是否格式化输出 sql
    		hibernate.dialect: 对应的数据库方言(类型)=> 在hibernate-release-4.2.4.Final\project\etc
    		hibernate.hbm2ddl.auto: 是表的生成策略:怎样生成表 update:表示以更新的方式生成表 最常用
    	 -->
    	<property name="hibernate.show_sql">true</property>
    	<property name="hibernate.format_sql">true</property>
    	<property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
    	
    	<property name="hibernate.hbm2ddl.auto">update</property>
    	<!-- 设置hibernate的隔离级别[完全是为了教学] -->
    	<property name="hibernate.connection.isolation">3</property>
    	
    	<!-- 配置c3p0 连接池 -->
    	<!-- 最大连接 -->
    	<property name="hibernate.c3p0.max_size">20</property>
    	<!-- 保留的最小连接  -->
    	<property name="hibernate.c3p0.min_size">5</property>
    	<!-- 获取连接池的连接的超时 -->
    	<property name="hibernate.c3p0.timeout">100</property>
    	<!-- 检查连接池的空闲时间,然后可回收 -->
    	<property name="hibernate.c3p0.idle_test_period">120</property>
    	<!-- 当连接不够使用时,一次增加多少个链接 -->
    	<property name="hibernate.c3p0.acquire_increment">5</property>
    	
    	<!-- 
    		mapping :引入 hbm文件 
    		位置需要防止  property后面
    		resource: 将这个hbm文件全路径拷贝
    	 --> 
    	<mapping resource="com/itbull/hibernate/bean/Pet.hbm.xml"/>
    	
    </session-factory>
</hibernate-configuration>

说明:hibernate.cfg.xml配置文件模板可以在hibernate框架源码包下的hibernate-release-4.2.4.Final\project\etc进行查找。(本文说明主要是以hibernate-release-4.2.4.Final为例)

加入我们

  • Java学习资源网官方群1

    群号:280998807(已满)

  • Java学习资源网官方群2

    群号:291195645

  • Java学习资源网官方群3

    群号:691628026

打赏本站

  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!
  • 微信扫码:你说多少就多少~
  • 支付宝扫码:你说多少就多少~