`
spacefly
  • 浏览: 277972 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring&hibernate 中c3p0的配置

    博客分类:
  • java
阅读更多

转载自 “maomao” 博客,请务必保留此出处http://maomao.blog.51cto.com/115985/20460

 

applicationContext.xml 文件:

<?
xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:jee="http://www.springframework.org/schema/jee"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    <bean id="dataSource"
        class="com.mchange.v2.c3p0.ComboPooledDataSource"
        destroy-method="close">
        <property name="driverClass">
            <value>com.mysql.jdbc.Driver</value>
        </property>
        <property name="jdbcUrl">
            <value>jdbc:mysql://192.168.3.110:3306/DBName?useUnicode=true&amp;characterEncoding=GBK</value>
        </property>
        <property name="user">
            <value>root</value>
        </property>
        <property name="password">
            <value>root</value>
        </property>
 
 <!--连接池中保留的最小连接数。-->
        <property name="minPoolSize">
            <value>5</value>
        </property>
 
 <!--连接池中保留的最大连接数。Default: 15 -->
        <property name="maxPoolSize">
            <value>30</value>
        </property>
 
<!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->
        <property name="initialPoolSize">
            <value>10</value>
        </property>
 
 <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->
        <property name="maxIdleTime">
            <value>60</value>
        </property>
 
 <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
        <property name="acquireIncrement">
            <value>5</value>
        </property>
 
 <!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements
  属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。
  如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0-->
        <property name="maxStatements">
            <value>0</value>
        </property>
 
 <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->
        <property name="idleConnectionTestPeriod">
            <value>60</value>
        </property>
 
 <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->
        <property name="acquireRetryAttempts">
            <value>30</value>
        </property>
 
 <!--获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效
  保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试
  获取连接失败后该数据源将申明已断开并永久关闭。Default: false-->
        <property name="breakAfterAcquireFailure">
            <value>true</value>
        </property>
 
 <!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的
  时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable
  等方法来提升连接测试的性能。Default: false -->
        <property name="testConnectionOnCheckout">
            <value>false</value>
        </property>
    </bean>
    <!-- Hibernate SessionFactory -->
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource">
            <ref local="dataSource" />
        </property>
        <property name="mappingResources">
            <list>
                <value>com/xh/hibernate/vo/User.hbm.xml</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.generate_statistics">true</prop>
                <prop key="hibernate.connection.release_mode">auto</prop>
                <prop key="hibernate.autoReconnect">true</prop>
            </props>
        </property>
    </bean>
</beans>
分享到:
评论

相关推荐

    SSH - SpringMVC4 + Spring4 + Hibernate4 + c3p0 + Mysql.zip

    在本项目"SSH - SpringMVC4 + Spring4 + Hibernate4 + c3p0 + Mysql.zip"中,开发者使用了SpringMVC4作为表现层,Spring4作为控制层和服务层,Hibernate4作为持久层,c3p0作为数据库连接池,以及MySQL作为数据库。...

    SSH整合学习笔记之struts2+spring+hibernate+c3p0源码

    SSH整合是Java Web开发中的一个经典组合,由Struts2、Spring和Hibernate三大框架组成,再加上C3P0作为数据库连接池,形成了高效且灵活的应用架构。本学习笔记将深入探讨这四个组件如何协同工作,构建出强大的企业级...

    SSH整合学习笔记之spring与hibernate整合(二)之c3p0

    整合Spring和Hibernate时,我们需要在Spring的配置文件中定义数据源,这里就是使用c3p0作为数据源。以下是一个简单的配置示例: ```xml &lt;bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"&gt;...

    C3P0连接池配置需要的jar包

    配置C3P0连接池时,开发者通常需要在配置文件(如Hibernate的`hibernate.cfg.xml`或Spring的`applicationContext.xml`)中指定以下参数: - `driver_class`: 数据库驱动类名,例如`com.mysql.jdbc.Driver`。 - `...

    SSH - Struts2 + Spring4 + Hibernate4 + c3p0 + Mysql.rar

    这个项目可能涵盖了用户登录注册、数据展示、CRUD操作等基本功能,通过Struts2接收和响应用户请求,Spring4管理业务逻辑和依赖,Hibernate4处理数据持久化,c3p0优化数据库连接,MySQL存储所有数据。开发者可以通过...

    c3p0配置及jar包

    在Spring中配置c3p0,通常需要在`applicationContext.xml`或对应的配置文件中添加以下内容: ```xml &lt;bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"&gt; &lt;!-- 配置c3p0连接池...

    Spring +struts+c3p0 框架demo

    在"Spring + Struts + C3P0 框架demo"中,这些组件的集成过程大致如下: 1. 首先,引入相关的jar包,包括Spring、Struts、C3P0以及它们的依赖库。 2. 配置Spring的bean定义文件,声明需要管理的对象及它们之间的...

    spring4+hibernate+springmvc+c3p0

    标题 "spring4+hibernate+springmvc+c3p0" 涉及的是一个经典的Java后端开发架构,主要用于构建高效、稳定的Web应用程序。这个架构由四个主要组件构成: 1. **Spring 4**:这是一个全面的企业级应用开发框架,提供...

    struts+spring+hibernate基础整合包+数据库Mysql+C3p0

    数据库的链接包是MySQl数据库,链接使用的C3P0 SSH是 struts+spring+hibernate的一个集成框架,是目前比较流行的一种Web应用程序开源框架 现在的结构是,Struts负责显示层,Hibernate负责持久层,Spring负责中间的...

    spring-hibernate jar包

    在实际应用中,开发者通常会使用 Spring 的 `LocalSessionFactoryBean` 来配置 Hibernate 的 SessionFactory,并结合 c3p0 数据源,实现 Spring 和 Hibernate 的整合。这可以通过 Spring 的 XML 配置文件或者 Java...

    sqlite-c3p0.

    标题“sqlite-c3p0”指的是将SQLite数据库与C3P0连接池集成到Spring框架和Hibernate ORM中的技术实践。这个描述暗示了我们正在处理一个Java Web应用项目,其中使用了SQLite作为轻量级数据库,C3P0作为数据源连接池,...

    c3p0jar包及配置文件(可用)

    内容概要:c3p0连接池需要jar包.rar以及相关配置文件 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。 适合人群:正在学习...

    sturts2+spring2.5+hibernate3.5+c3p0+log4j整合示例项目

    在这个项目中,c3p0被集成到Spring配置中,为Hibernate提供连接池服务,确保多个并发请求时能高效地获取和释放数据库连接。 ### Log4j日志系统 Log4j是Apache的一个开源项目,用于记录程序运行时的日志信息。它...

    ssh3中使用c3p0

    2. **配置C3P0**:在Hibernate的配置文件(如hibernate.cfg.xml)中,添加C3P0的相关配置。例如: ```xml &lt;property name="hibernate.c3p0.min_size"&gt;5 &lt;property name="hibernate.c3p0.max_size"&gt;20 ...

    spring4配置hibernate3

    4. **配置DataSource**:同样在Spring配置文件中,定义一个DataSource Bean,这通常是连接池的实现,如Apache DBCP或C3P0,用于管理数据库连接。 5. **配置Hibernate SessionFactory Bean**:使用`...

    C3P0连接池jar包(正式).zip

    3. **初始化C3P0**:在代码中创建` ComboPooledDataSource `对象,并加载配置,或者在Spring等框架中通过XML或注解方式配置C3P0数据源。 4. **获取与释放连接**:使用`getConnection()`方法从数据源获取连接,使用...

    C3P0的jar包

    8. **与其他框架的集成**:C3P0可以与许多流行的Java Web框架,如Spring、Hibernate等无缝集成,简化了开发过程中的数据访问层配置。 在实际应用中,为了使用C3P0,我们需要在项目中引入c3p0的jar包,通常可以从...

    c3p0最新jar包

    例如,在Hibernate中,通过配置`hibernate-c3p0`模块,可以在SessionFactory的创建过程中指定C3P0作为连接池实现。 总之,C3P0作为一个成熟的数据库连接池解决方案,为Java开发者提供了强大且灵活的数据库连接管理...

    c3p0-0.9.1.2.zip

    Spring框架同样支持C3P0,开发者可以在Spring的配置文件中声明C3P0的数据源,以便在Spring管理的bean中透明地使用数据库连接。 总的来说,C3P0是Java开发中一个实用的数据库连接池组件,它为Java应用提供了高效的...

Global site tag (gtag.js) - Google Analytics