Tomcat的连接池其实就是dbcp. 我比较过流行的 dbcp,c3p0,proxool 三种连接池,上网搜集了很多资料,发现都是proxool最好。现在hibernate3中已经放弃了对dbcp的集成,我从hibernate的官方网站上看到hibernate的作者说这样做的原因是因为实践过程中发现dbcp不稳定,至于c3p0,我见过国外有几篇文章讲到它的效率不高,不过具体怎样,我没试过。我们公司的维护的一个日访问量达数十万的网站就是用proxool,事实证明很稳定。struts的连接池,我没用过,我觉得连接池的效率跟稳定性是非常关键的,如果在大型应用中,选择连接池应抱谨 。
在做项目过程当中我使用的就是c3p0.
jdk用的是:1.5版本。在启动项目就一直抱错:
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:243)
at com.mchange.v2.c3p0.DriverManagerDataSource.driver(DriverManagerDataSource.java:224)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:120)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:143)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:132)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
后来把jdk的版本换成了1.6的就ok了。不知道是不是c3p0的一个bug,有待继续的研究!
分享到:
相关推荐
在这个主题中,我们将详细讨论 Weblogic 连接池配置数据库断掉重连的问题,包括连接池配置的基本概念、断掉重连机制的原理、配置参数的解释等。 一、连接池配置的基本概念 在 Weblogic 中,连接池配置是指将多个...
在Java中,有许多库可以实现连接池功能,如C3P0、DBCP、HikariCP以及我们今天要讨论的jTDS。 jTDS是一个开源的Java驱动程序,专门用于连接Microsoft SQL Server和Sybase数据库。它实现了JDBC API,使得Java开发者...
在本文中,我们将讨论使用连接池技术时的配置,特别是关于 Tomcat、MySQL 和 Eclipse 的数据库连接池配置。 一、开发工具介绍 为了配置连接池,我们需要使用以下开发工具: * Tomcat 5.5.2 作为我们的应用服务器 ...
下面,我们将详细讨论JSP中数据库连接池的实现、工作原理以及如何实例化。 1. **数据库连接池概念**: 数据库连接池是在应用服务器启动时创建的一组预设的数据库连接。这些连接在应用需要时被复用,而不是每次请求...
接着,我们讨论连接池的概念。在Java中,有多个流行的连接池实现,如C3P0、HikariCP和Apache DBCP。这些库管理数据库连接的生命周期,提供高效的连接复用。在本例中,我们有一个自定义的简单连接池类,它可能包含...
配置多个连接池意味着可以根据不同的业务需求,为不同的数据源设置不同的连接池,例如,对于读写频繁的操作可以配置高性能的连接池,而对于低频操作则可以选择更节省资源的连接池。这需要在`application.properties`...
接下来,我们讨论Binder连接池。在高并发环境下,频繁创建和销毁Binder对象会导致性能下降,因为每次创建和销毁都需要系统资源的分配和回收。为了解决这个问题,开发者引入了Binder连接池的概念,类似于数据库中的...
"c3p0 还有其他连接池"这个标题表明我们将讨论c3p0以及其他类型的数据库连接池。 c3p0是一款开源的Java数据库连接池实现,由Miquel Arquero创建,它是Comprehensive Database Connection Pooling的缩写。c3p0提供了...
在这个特定的项目中,开发者选择了使用Access作为数据库管理系统,结合JSP(JavaServer Pages)技术和连接池来实现一个高效、稳定的BBS平台。 Access是微软公司开发的一款关系型数据库管理系统,它易于使用,特别...
本文讨论的连接池包括一个连接池类(DBConnectionPool)和一个连接池管理类(DBConnetionPoolManager)。连接池类是对某一数据库所有连接的“缓冲池”,主要实现以下功能:从连接池获取或创建可用连接;使用完毕之后...
这里,我们讨论的是一个自定义实现的简单连接池。 连接池的核心功能通常包括以下几点: 1. **初始化与配置**:连接池在启动时需要根据预先设定的参数(如最大连接数、最小连接数、超时时间等)进行初始化。这些...
本文详细介绍了基于JDBC的数据库连接池技术,通过对连接池原理、优势及其实现方式的讨论,证明了连接池技术在提高数据库访问效率方面的有效性。在实际应用中,合理设计和配置连接池,能够极大地提升应用程序的性能和...
接下来,我们讨论连接池的设计思想。数据库连接池是一种池化技术,用于管理数据库连接,避免频繁地创建和销毁连接,从而提高性能。连接池的主要优点包括: 1. **资源重用**:连接池会预先创建并缓存一定数量的...
在这个场景中,我们将讨论如何配置Tomcat的连接池,并进行性能测试。 首先,我们需要将数据库驱动的JAR文件,例如MySQL的JDBC驱动,放入Tomcat的`common/lib`目录下。这是因为Tomcat会在这个路径下寻找JDBC驱动来...
本案例聚焦于Tomcat 5.5版本的连接池配置,通过一个具体的JSP项目来展示如何设置和使用连接池。下面我们将详细讲解这个过程。 一、连接池概念 连接池是预创建并管理一定数量的数据库连接,当应用程序需要连接时,...
在Java Web开发中,Tomcat作为一款广泛应用的Servlet容器,其性能优化往往离不开数据库连接池的合理配置。本文将深入探讨Tomcat连接池的配置,包括`web.xml`和`context.xml`两个重要配置文件的使用,以实现高效、...
本文主要讨论了在WebSphere中配置Oracle、SQL Server、Sybase和MySQL这四种流行数据库的连接池方法。 首先,系统准备工作至关重要。在开始配置之前,你需要在相应的数据库中创建所需的表,并设置好环境变量。例如,...
本示例将重点讨论如何使用JDBC API和JDK自带的日志系统进行简单的数据库连接池配置。 首先,数据库连接池的基本工作原理是预先创建一定数量的数据库连接,并存储在一个池中。当应用需要连接数据库时,它会从池中...
jdbc 连接池技术有多种实现,今天我们将要讨论的是 Proxool、C3P0 和 DBCP 三种最常见的 jdbc 连接池技术。 一、Proxool Proxool 是一种 Java 数据库连接池技术,是 sourceforge 下的一个开源项目。这个项目提供一...