Hibernate框架核心配置文件

本文介绍了Hibernate核心配置文件hibernate.cfg.xml的四大组成部分,包括数据库连接信息、Hibernate特性设置、连接池配置以及实体类映射。重点讨论了方言的作用,如何屏蔽不同数据库之间的差异,并展示了具体的配置示例,如数据库URL、用户名、密码以及C3P0连接池的配置参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hibernate核心配置文件hibernate.cfg.xml主要由以下四部分组成

(1)数据库连接信息,包括驱动程序类名、连接URL、用户名和密码。

(2)Hibernate相关特性,包括dialect(方言)、show_sql(输出SQL语句到控制台)、format_sql(格式化SQL语句)

(3)连接池相关信息。

(4)实体类映射文件,实体类与数据库表之间的逻辑映射


ORM有自动的SQL生成机制,大部分时候,数据库操作都是通过标准SQL来完成,但是有时需要使用数据库特有的语句,如分页语句、函数等。方言正是用于这些时候,指导Hibernate如何生成SQL。Hibernate采用方言属性,可以屏蔽各数据库之间的差异,使得应用程序更加方便的从一种数据库前移到另一种数据库。


创建hibernate.cfg.xml,保存到工程的src目录下,编写数据库的连接配置信息,及具体代码如下

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- 配置数据库方言 -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- 配置数据库驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- 配置数据库url -->
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
<!-- 配置用户名 -->
<property name="hibernate.connection.username">root</property>
<!-- 配置密码 -->
<property name="hibernate.connection.password">1921</property>
<!-- 是否输出Hibernate生成的SQL语句,开启为true -->
<property name="show_sql">true</property>
<!-- ddl语句自动建表 -->
<property name="hbm2ddl.auto">update</property>
<!-- 是否对输出SQL进行格式化 -->
<property name="format_sql">true</property>

<!-- 连接池的配置 -->
<property name="hibernate.connection.provider_class">
org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider
</property>

<!-- C3P0随机准备好的最少的JDBC连接数量 -->
<property name="hibernate.c3p0.min_size">5</property>

<!-- 连接池的最大JDBC连接数量 -->
<property name="hibernate.c3p0.max_size">20</property>

<!-- 配置超时周期,在他之后,休闲连接将从连接池中移除 -->
<property name="hibernate.c3p0.timeout">300</property>

<!-- 最多高速缓存100个预编译语句,该属性是使Hibernate获得良好性能的要素 -->
<property name="hibernate.c3p0.max_statements">100</property>

<!-- 连接池被自动验证前,以秒为单位的闲置时间 -->
<property name="hibernate.c3p0.idle_test_period">3000</property>

<!-- 注册ORM实体类映射文件 -->
<mapping resource="com/caokaiyuan/domain/User.hbm.xml"/>

</session-factory>
</hibernate-configuration>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值