JDBC连接
hibernate.connection.driver_class jdbc驱动类
hibernate.connection.url jdbc URL jdbc:mysql://localhost:3306/task?autoReconnect=true
自动重连
hibernate.connection.username 数据库用户
hibernate.connection.password 数据库用户密码
hibernate.dialect 一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL
-
MySQL
org.hibernate.dialect.MySQLDialect
-
MySQL
with InnoDB org.hibernate.dialect.MySQLInnoDBDialect
-
Oracle
org.hibernate.dialect.OracleDialect
-
Oracle 9i/10g
org.hibernate.dialect.Oracle9Dialect
-
Microsoft SQL Server
org.hibernate.dialect.SQLServerDialect
hibernate.show_sql 输出所有SQL语句到控制台 true | false
hibernate.format_sql 在log和console中打印出更漂亮的SQL true | false
Hibernate JDBC和连接(connection)属性
hibernate.jdbc.fetch_size 非零值,指定JDBC抓取数量的大小
hibernate.jdbc.batch_size 非零值,允许Hibernate使用JDBC2的批量更新.取值 建议取5到30之间的值
hibernate.connection.release_mode 指定Hibernate在何时释放JDBC连接.
on_close | after_transaction | after_statement | auto;JTA数据源
使用 after_statement
在每次JDBC调用后,都会主动的释放连接;对于非JTA
的连接, 使用after_transaction
在每个事务结束时释放
连接是合理的;auto将为JTA和CMT事务策略选择after_statement, 为JDBC事务策略选择after_transaction.
Hibernate缓存属性
hibernate.cache.provider_class 自定义的CacheProvider的类名"org.hibernate.connection.C3P0ConnectionProvider
"
hibernate.cache.use_query_cache 允许查询缓存 true|false
hibernate.cache.use_second_level_cache 能用来完全禁止使用二级缓存 true|false
c3p0连接池设置:C3P0是一个随Hibernate一同分发的开源的JDBC连接池
参考:http://image.bigad.cn/blog/?p=4
<!-- 当连接池中的连接耗尽
的时候c3p0一次同时获取的连接数
-->
<property name="hibernate.c3p0.initialPoolSize">3</property>
<!-- 最大连接数
-->
<property name="hibernate.c3p0.max_size">20</property>
<!-- 最小连接数
-->
<property name="hibernate.c3p0.min_size">5</property>
<!-- 获得连接的超时时间
,如果超过这个时间,会抛出异常,单位毫秒 -->
<property name="hibernate.c3p0.timeout">120</property>
<!-- 最大的PreparedStatement
的数量 -->
<property name="hibernate.c3p0.max_statements">100</property>
<!-- 每隔120秒检查连接池里的空闲连接
,单位是秒-->
<property name="hibernate.c3p0.idle_test_period">120</property>
<!-- 当连接池里面的连接用完的时候,C3P0一下获取的新的连接数
-->
<property name="hibernate.c3p0.acquire_increment">2</property>
<!-- 每次都验证连接
是否可用 -->
<property name="hibernate.c3p0.validate">true</property>
<!--最大空闲时间
,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
<property name="hibernate.c3p0.maxIdleTime">60</property>
<!--c3p0是异步操作的,缓慢的JDBC操作通过帮助进程
完成。扩展这些操作可以有效的提升性能通过多线程实现多个操作同时被执行。Default: 3-->
<property name="hibernate.c3p0.numHelperThreads">10</property>
<!--每60秒
检查所有连接池中的空闲连接
。Default: 0 -->
<property name="hibernate.c3p0.idleConnectionTestPeriod">60</property>
<!--如果设为true那么在取得连接的同时将校验连接的有效性
。Default: false -->
<property name="hibernate.c3p0.testConnectionOnCheckin">true</property>
<!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的时候
都将校验其有效性
。建议使用idleConnectionTestPeriod或automaticTestTable等方法来提升连接测试的性能。Default: false -->
<property name="hibernate.c3p0.testConnectionOnCheckout">false</property>
分享到:
相关推荐
本文将深入探讨其中的数据源配置与c3p0连接池的使用。 一、数据源配置 在Hibernate.cfg.xml中,数据源的配置分为两种方式:JDBC直连和JNDI查找。JDBC直连是直接在配置文件中提供数据库连接的相关信息,如数据库...
2. **连接池**:如`c3p0.min_size`、`c3p0.max_size`等,用于配置连接池的大小,以提高数据库操作性能。 3. **dialect**:`dialect`属性指定了数据库的方言,确保Hibernate可以生成符合特定数据库语法的SQL。 4. *...
C3P0就是一种广泛使用的第三方JDBC连接池实现,它被集成在Hibernate框架中,可以便捷地进行配置。 **1. 为什么选择C3P0连接池** Hibernate自带的连接池算法并不成熟,主要适用于快速开发和学习,而不适合在生产...
在 Hibernate 中,C3P0 的配置主要通过 `hibernate.properties` 或 `hibernate.cfg.xml` 文件中的属性进行设置。这些配置项对于控制连接池的行为至关重要。 #### 3. 关键配置参数详解 ##### 3.1 hibernate....
`Hibernate.cfg.xml`是Hibernate的核心配置文件,它定义了数据源、SQL行为、连接池参数以及对象-关系映射。正确地配置这些参数能确保应用程序高效、稳定地运行。开发者应根据实际项目需求,灵活调整和优化这些配置,...
首先,在`hibernate.cfg.xml`或`hibernate.properties`文件中,我们需要指定使用C3P0作为连接池提供者。具体做法是在配置文件中添加或修改以下属性: ``` # 指定使用C3P0连接池 hibernate.connection.provider_...
“c3p0(全套)”是一个开源的JDBC连接池,它提供了数据库连接的自动管理,包括连接的创建、释放和维护。使用c3p0可以提高数据库连接的复用率,减少系统资源的消耗,同时提供了一定程度的故障恢复能力。 “ojdbc14....
**配置Hibernate使用C3P0连接池** 在Java Web开发中,数据库连接管理是一个至关重要的环节,有效地管理和控制数据库连接可以提高应用的性能和稳定性。Hibernate作为一款强大的ORM(对象关系映射)框架,提供了与...
配置C3P0连接池时,开发者通常需要在配置文件(如Hibernate的`hibernate.cfg.xml`或Spring的`applicationContext.xml`)中指定以下参数: - `driver_class`: 数据库驱动类名,例如`com.mysql.jdbc.Driver`。 - `...
### hibernate使用c3p0连接池的知识点详解 #### 一、Hibernate与C3P0连接池概述 - **Hibernate**: 是一个全功能的Java持久层框架,它提供了对象关系映射(ORM)功能,使得Java应用可以方便地与数据库进行交互。...
2. 配置Hibernate:在Hibernate的配置文件`hibernate.cfg.xml`中,我们需要定义c3p0数据源。以下是一个基本的配置示例: ```xml <property name="hibernate.c3p0.min_size">5 <property name="hibernate.c3p0.max...
2. 配置数据源:在hibernate.cfg.xml中声明C3P0的数据源,设置最小连接数(minPoolSize)、最大连接数(maxPoolSize)、获取连接超时时间 acquireIncrement 等参数。 ```xml <property name="hibernate.c3p0.min_size">...
配置Hibernate连接池主要涉及修改`hibernate.cfg.xml`文件。例如,配置C3P0时,需要添加以下属性: - `hibernate.c3p0.min_size`:最小连接数。 - `hibernate.c3p0.max_size`:最大连接数。 - `hibernate.c3p0....
Hibernate通过DataSource接口与连接池进行交互,配置连接池主要是配置Hibernate的`hibernate.c3p0`或`hibernate.connection.provider_class`等相关属性,选择合适的连接池实现,如C3P0、DBCP、Druid、HikariCP等。...
### Hibernate + c3p0 连接池与 SQL Server 2000 的配置与问题解决 #### 一、背景介绍 在Java开发环境中,Hibernate作为一款流行的ORM框架,能够提供一套强大的对象-关系映射机制,使得开发者可以更加便捷地进行...
- 在`hibernate.cfg.xml`文件中设置以下属性来配置C3P0连接池: ```xml <property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider <property name="c3p0.min_size">2 ...
在配置Hibernate时,开发者需要指定使用C3P0作为连接池,并在Hibernate的配置文件(如`hibernate.cfg.xml`)中设置C3P0的相关属性,如: ```xml <property name="hibernate.c3p0.min_size">5 <property name="...
在Hibernate中配置C3P0,我们需要在`hibernate.cfg.xml`或`persistence.xml`文件中添加相应的配置: ```xml <property name="hibernate.c3p0.min_size">5 <property name="hibernate.c3p0.max_size">20 ...
5. 配置C3P0:在Hibernate的配置文件(通常是hibernate.cfg.xml)中,需要添加C3P0的配置信息,如最小连接数、最大连接数、获取连接的超时时间、空闲测试频率等。例如: ```xml <property name="hibernate.c3p0.min_...