`
chenlb
  • 浏览: 695663 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

spring with c3p0

阅读更多
参考:(willpower88兄的blog) http://www.blogjava.net/willpower88/archive/2007/01/10/92928.html

当我spring中用c3p0时第一次老出现
org.hibernate.exception.JDBCConnectionException: could not execute query
刷新后就不会。一番折腾后直接用<property name="" value="" />就可以了。随后找到willpower88兄的blog他总结得很好。

环境:
spring 2.0
c3p0-0.9.0.4

spring配置文件如下(引用willpower88兄的,注释掉的都有问题的):

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"   destroy-method="close">
         
<property name="driverClass" value="com.mysql.jdbc.Driver" />
         
<property name="jdbcUrl" value="jdbc:mysql://localhost/test"/>            
         
<property name="user" value="root"/>
         
<property name="password" value=""/>
          
         
<property name="minPoolSize" value="2"/>
         
<property name="maxPoolSize" value="20"/>
         
<property name="maxIdleTime" value="1800"/>
         
<property name="acquireIncrement" value="2"/>
         
<property name="maxStatements" value="0"/>
         
<property name="initialPoolSize" value="3"/>
         
<property name="idleConnectionTestPeriod" value="1800"/>
         
<property name="acquireRetryAttempts" value="30"/>
         
<property name="breakAfterAcquireFailure" value="true"/>
         
<property name="testConnectionOnCheckout" value="false"/>
         
         
<!-- 
         <property name="properties">
          <props>              
              <prop key="c3p0.minPoolSize">1</prop> 
              <prop key="c3p0.maxPoolSize">10</prop> 
              <prop key="c3p0.maxIdleTime">1800</prop>              
              <prop key="c3p0.acquireIncrement">2</prop> 
              <prop key="c3p0.maxStatements">0</prop> 
              <prop key="c3p0.initialPoolSize">2</prop>
              <prop key="c3p0.idleConnectionTestPeriod">1800</prop>
              <prop key="c3p0.acquireRetryAttempts">30</prop>
              <prop key="c3p0.breakAfterAcquireFailure">true</prop>
              <prop key="c3p0.testConnectionOnCheckout">true</prop>
              <prop key="user">root</prop>
              <prop key="password">999999</prop>
              
          </props>
         </property>
        
-->      
</bean>

<!-- Hibernate SessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  
<property name="dataSource" ref="dataSource"/>
  
<property name="mappingDirectoryLocations">
      
<list>
   
<value>classpath:/com/licaionline/domain/</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>
     
<prop key="hibernate.cglib.use_reflection_optimizer">true</prop>
<!-- 
    <prop key="hibernate.useUnicode"></prop> 
    <prop key="hibernate.characterEncoding"></prop>
    <prop key="hibernate.default-lazy-init"></prop>
    <prop key="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</prop>     
 
-->
                                
<!--
    <prop key="hibernate.c3p0.acquire_increment">2</prop>
    <prop key="hibernate.c3p0.idle_test_period">1800</prop>
    <prop key="hibernate.c3p0.timeout">1800</prop>
    <prop key="hibernate.c3p0.max_size">30</prop>
    <prop key="hibernate.c3p0.min_size">2</prop>
    <prop key="hibernate.c3p0.max_statements">50</prop>
-->         
   
</props>
  
</property>
</bean>
分享到:
评论

相关推荐

    c3p0连接mysql8.0.11驱动打包

    然后,在Java代码中,通过Spring框架或者其他方式初始化并使用C3P0数据源: ```java import com.mchange.v2.c3p0.ComboPooledDataSource; public class DataSourceConfig { public static ComboPooledDataSource ...

    c3p0-0.9.5.2

    1. **引入依赖**:在项目中添加C3P0相关的JAR包,如`c3p0-0.9.5.2.jar`,`c3p0-oracle-thin-extras-0.9.5.2.jar`(针对Oracle数据库的额外支持),以及`mchange-commons-java-0.2.11.jar`(Mchange Commons库,用于...

    spring-framework-2.5.4-with-dependencies

    C3P0是一个开源的JDBC连接池,Spring 2.5.4集成C3P0,提供了一种有效管理数据库连接的方式,包括自动检测并回收空闲过久的连接,提高了数据库操作的性能和效率。 5. CGlib 字节码库: CGlib是一个强大的字节码...

    hibernate+spring的配置.docx

    - 使用`&lt;bean&gt;`标签定义一个名为`dataSource`的数据源,这里使用了C3P0连接池。 - 配置数据库连接的相关属性,如驱动类、URL、用户名和密码等。 2. **SessionFactory配置**: - 创建一个`sessionFactory`的bean...

    JDBC数据源连接池的配置和使用示例

    - C3P0:开源的JDBC连接池,提供了比JDBC更强大的功能,如自动检测死锁、自动重连等。 - DBCP:Apache的一个开源项目,基于Jakarta-pool实现,是Tomcat默认的数据源。 - HikariCP:被誉为“最快的Java JDBC连接池”...

    spring+SpringMVC+MyBatis之配置多数据源

    在Spring框架中,我们可以使用Apache的Commons DBCP或C3P0等库来提供数据源实现。 **配置Spring的多数据源** 1. 引入依赖:确保项目中包含了Spring、SpringMVC、MyBatis以及相应的数据源库的依赖。例如,如果使用...

    Spring2.5+Struts1.3.8+Hibernate3.0整合

    通常使用`org.apache.commons.dbcp.BasicDataSource`或`c3p0`等数据源。配置示例如下: ```xml ``` ##### 2、配置Hibernate的核心组件 接下来配置Hibernate的核心组件,包括SessionFactory等。 ```xml...

    jfinal上传需要的jar

    1. **c3p0-0.9.1.2.jar**:这是一个数据库连接池,全称是C3P0。它提供了一种管理数据库连接的方式,允许应用程序在不关闭连接的情况下重复使用数据库连接,从而提高了性能和效率。C3P0包含了一些特性,如自动检测...

    开源框架jar包(百度云盘)

     · c3p0-0.9.1.2.bin.zip  · apache-log4j-1.2.15.zip  · xwork2-2.1.rar  · dom4j-1.6.1.rar  · elecfans.com-XPath.rar  · xwork-assembly-2.1.6-all.zip  · quartz-2.2.1-distribution.tar.gz  ·...

    02_IoC��DIע�⿪��.ppt

    Spring提供了多种数据源实现,如DBCP、C3P0、BoneCP和Druid等。以Druid为例,配置数据源通常包括以下几个步骤: 1. 添加Druid和数据库驱动的Maven坐标到`pom.xml`文件。 2. 创建`DruidDataSource`对象,并设置...

    数据库连接池以及在代码中的应用

    1. **选择连接池实现**:有很多成熟的数据库连接池实现,如Apache的DBCP、C3P0,以及HikariCP等。HikariCP以其高性能和低延迟而受到广泛应用。 2. **配置连接池参数**:包括初始连接数、最大连接数、最小连接数、...

    java面试题

    还会涉及JDBC和高级特性,如连接池(C3P0、Druid、HikariCP)以及ORM框架(如Hibernate、MyBatis)的使用。 10. **其他**:网络编程(TCP/IP、HTTP协议)、IO流、NIO、反射、Lambda表达式、Stream API、模块化系统...

    Java 最常见 200+ 面试题全解析:面试必备208题

    10. **数据库操作**:SQL语言的基本操作(增删改查),事务的ACID属性,连接池(如C3P0、Druid、HikariCP),以及JDBC API的使用。 11. **Spring框架**:Spring的核心特性,如依赖注入(DI)、面向切面编程(AOP)...

    YouDBUtils:自用的数据库工具集

    以alibaba的Druid为基础(拒绝DBCP/C3P0),支持代码配置Druid,拒绝配置文件常规: 仅支持MySQL/SQLite(自用. 轻巧)IOC/DI/Transaction: 类似spring的控制反转,主要用于生成指定包下的DAO类的代理类(依赖...

    Web数据库编程Java 工程

    为了提高性能和效率,开发中会使用连接池(如C3P0、HikariCP或Apache DBCP),它们管理和复用数据库连接,避免频繁地创建和销毁连接。 十、安全性与优化 确保Web数据库编程的安全性至关重要,这包括使用预编译语句...

    25本java高手合集 各种底层分析各种精华

    首先,JDBC的连接池技术,如C3P0、HikariCP、Druid等,是提高系统性能的重要手段。学习如何配置和使用这些连接池,可以减少数据库连接的创建和销毁开销,提高并发处理能力。 其次,JDBC的批处理操作能显著提升大...

    java面试经典150题

    9. **数据库操作**:基本的SQL语法,JDBC API的使用,事务处理(ACID属性),以及连接池(C3P0, HikariCP, Druid等)的配置和优化。 10. **设计模式**:常见的23种设计模式,如单例、工厂、观察者、装饰器、适配器...

    JAVA面试书籍集合

    4. **数据库相关**:SQL查询优化、事务管理、JDBC操作、连接池(如C3P0、Druid)。 5. **NoSQL**:如MongoDB、Redis的使用和原理。 《JAVA程序员面试题集合》可能会包含更广泛的题目,可能涵盖到Java开发过程中的...

    java数据库学习

    在实际开发中,我们通常会使用try-with-resources语句来确保资源的正确关闭,同时也可以使用数据库连接池(如C3P0、HikariCP等)来管理数据库连接,提高性能和稳定性。 了解这些基础知识后,你可以进一步学习存储...

    Rest_with_JDBC:如何连接和检索数据库中的数据

    - **连接池**:使用连接池(如HikariCP或C3P0)管理数据库连接,以提高性能和资源利用率。 - **错误处理**:对可能出现的异常进行捕获和处理,提供有意义的错误信息。 - **安全**:避免SQL注入,使用预编译的`...

Global site tag (gtag.js) - Google Analytics