`

bonecp mysql No suitable driver found for jdbc:mysql

 
阅读更多

java.sql.SQLException: Unable to open a test connection to the given database. JDBC url = jdbc:mysql://192.168.1.136:3306/shop, username = root. Terminating connection pool. Original Exception: ------
java.sql.SQLException: No suitable driver found for jdbc:mysql://192.168.1.136:3306/shop
    at java.sql.DriverManager.getConnection(DriverManager.java:604)
    at java.sql.DriverManager.getConnection(DriverManager.java:221)
    at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:242)
    at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:289)
    at Netpet.Web.Data.pool.Pool2.configure(Pool2.java:118)
    at Netpet.Web.Data.pool.Pool2.getConnection(Pool2.java:25)
    at Netpet.Web.Data.ConnectionPool.GetConnection1(ConnectionPool.java:92)
    at Netpet.Web.Data.ConnectionPool.GetConnection(ConnectionPool.java:72)
    at Netpet.Web.Data.ConnectionPool.GetConnection(ConnectionPool.java:56)
    at Netpet.Web.Data.Netpet.BaseConfig.Config(BaseConfig.java:98)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at Netpet.Web.Config.InitConfig.InitAllConfigTrue(InitConfig.java:162)
    at Netpet.Web.Config.InitConfig.InitAllConfig(InitConfig.java:97)
    at Netpet.Web.InitServer.init(InitServer.java:40)
    at javax.servlet.GenericServlet.init(GenericServlet.java:160)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1100)
    at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1618)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
------

    at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:296)
    at Netpet.Web.Data.pool.Pool2.configure(Pool2.java:118)
    at Netpet.Web.Data.pool.Pool2.getConnection(Pool2.java:25)
    at Netpet.Web.Data.ConnectionPool.GetConnection1(ConnectionPool.java:92)
    at Netpet.Web.Data.ConnectionPool.GetConnection(ConnectionPool.java:72)
    at Netpet.Web.Data.ConnectionPool.GetConnection(ConnectionPool.java:56)
    at Netpet.Web.Data.Netpet.BaseConfig.Config(BaseConfig.java:98)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at Netpet.Web.Config.InitConfig.InitAllConfigTrue(InitConfig.java:162)
    at Netpet.Web.Config.InitConfig.InitAllConfig(InitConfig.java:97)
    at Netpet.Web.InitServer.init(InitServer.java:40)
    at javax.servlet.GenericServlet.init(GenericServlet.java:160)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1100)
    at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1618)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.sql.SQLException: No suitable driver found for jdbc:mysql://192.168.1.136:3306/shop
    at java.sql.DriverManager.getConnection(DriverManager.java:604)
    at java.sql.DriverManager.getConnection(DriverManager.java:221)
    at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:242)
    at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:289)
    ... 31 more

 

 

使用bonecp连接池总是报这个错误,经过半天的测试终于找到了原因,

 

初始化数据库连接时没有写:Class.forName("com.mysql.jdbc.Driver");

 

 

代码如下:

 

public synchronized static void configure(Properties props) throws SQLException{
		if(pools != null && pools.size() > 0){return;}
		
		try {
            // load the database driver (make sure this is in your classpath!)
            Class.forName("com.mysql.jdbc.Driver");
        } catch (Exception e) {
            e.printStackTrace();
            return;
        }
		
		// setup the connection pool
        BoneCPConfig config = new BoneCPConfig();
        config.setJdbcUrl("jdbc:mysql://"+GlobalConfig.mysqlDbIp+":3306/shop"); // jdbc url specific to your database, eg jdbc:mysql://127.0.0.1/yourdb
        config.setUsername(GlobalConfig.mysqlDbUserName); 
        config.setPassword(GlobalConfig.mysqlDbPwd);
        //设置每60秒检查数据库中的空闲连接数
        config.setIdleConnectionTestPeriod(60);
        //设置连接空闲时间
        config.setIdleMaxAge(240);
        //设置每个分区中的最大连接数 30
        config.setMaxConnectionsPerPartition(5);
        //设置每个分区中的最小连接数 10
        config.setMinConnectionsPerPartition(5);
        //当连接池中的连接耗尽的时候 BoneCP一次同时获取的连接数
        config.setAcquireIncrement(5);
        //连接释放处理
        config.setReleaseHelperThreads(3);
        //设置分区  分区数为3
        config.setPartitionCount(3);
        //设置配置参数
        BoneCP connectionPool = new BoneCP(config); // setup the connection pool
        
        pools.put(DatabaseConfig.DEFAULT_NAME, connectionPool);
        
        
        
        
        BoneCPConfig config2 = new BoneCPConfig();
        config2.setJdbcUrl("jdbc:mysql://"+GlobalConfig.mysqlDbIp+":3306/account"); // jdbc url specific to your database, eg jdbc:mysql://127.0.0.1/yourdb
        config2.setUsername(GlobalConfig.mysqlDbUserName); 
        config2.setPassword(GlobalConfig.mysqlDbPwd);
        //设置每60秒检查数据库中的空闲连接数
        config2.setIdleConnectionTestPeriod(60);
        //设置连接空闲时间
        config2.setIdleMaxAge(240);
        //设置每个分区中的最大连接数 30
        config2.setMaxConnectionsPerPartition(5);
        //设置每个分区中的最小连接数 10
        config2.setMinConnectionsPerPartition(5);
        //当连接池中的连接耗尽的时候 BoneCP一次同时获取的连接数
        config2.setAcquireIncrement(5);
        //连接释放处理
        config2.setReleaseHelperThreads(3);
        //设置分区  分区数为3
        config2.setPartitionCount(1);
        //设置配置参数
        BoneCP connectionPool2 = new BoneCP(config2); // setup the connection pool
        
        pools.put(DatabaseConfig.PAY_NAME, connectionPool2);
        
	}
 

 

分享到:
评论

相关推荐

    BoneCP.zip_BoneCP_BoneCP 源码_jdbc BoneCP_oracle

    在本实例中,我们将会深入理解如何在Java应用程序中利用BoneCP作为JDBC连接池来管理数据库连接,以及如何针对Oracle数据库进行配置。 首先,让我们了解什么是JDBC连接池。JDBC连接池是一种数据库连接管理机制,它...

    bonecp 相关所有jar包以及连接demo

    **配置 BoneCP:** 在项目中使用 BoneCP 需要添加对应的 JAR 包,包括 BoneCP.jar、log4j.jar 和其他依赖库。在 Java 代码中,你需要配置 BoneCP 的连接池参数,例如: ```java Properties props = new Properties...

    基于Bonecp连接池的jdbc工具类及jar包

    ds.setJdbcUrl("jdbc:mysql://localhost:3306/test"); ds.setUsername("root"); ds.setPassword("password"); ``` 4. 创建和关闭连接:工具类中提供方法供其他模块获取和释放数据库连接。使用`getConnection()`...

    比c3p0还快的bonecp连接池配置方法讲解

    骨CP(BoneCP)是一款高性能的Java数据库连接池(JDBC Connection Pool)库,它以其高效性能和轻量级的设计而受到开发者的欢迎。在某些测试中,BoneCP被证明比C3P0快约25倍,这使得它成为在高并发场景下优化数据库...

    BoneCP的xml使用实例

    &lt;JdbcDriver class="com.mysql.jdbc.Driver"/&gt; &lt;jdbcUrl&gt;jdbc:mysql://localhost:3306/test&lt;/jdbcUrl&gt; &lt;username&gt;root &lt;password&gt;password &lt;!-- 连接池配置 --&gt; &lt;minConnectionsPerPartition&gt;5 ...

    BoneCP_数据源设置

    我们通常使用`&lt;context:property-placeholder&gt;`标签加载外部的配置文件(如`bonecp.properties`),然后通过`&lt;bean&gt;`标签定义数据源,将配置文件中的属性值注入到对应的Bean属性中,如`driverClass`, `jdbcUrl`, `...

    BoneCP 连接池学习笔记

    BoneCP 是一个高效、轻量级的 Java 数据库连接池(JDBC Connection Pool)实现。它在性能上优于其他同类连接池,如 C3P0 和 DBCP,尤其适用于高并发场景。在深入理解 BoneCP 之前,我们先来了解一下数据库连接池的...

    Bonecp实例

    《BoneCP:一款高效数据库连接池的深度解析》 BoneCP是一款开源的、高性能的Java数据库连接池。在深入理解 BoneCP之前,我们先要明白数据库连接池的基本概念。数据库连接池是在应用服务器启动时创建的,它可以提供...

    JDBC连接池BoneCP_Demo

    **JDBC连接池BoneCP_Demo详解** 在Java开发中,数据库操作是不可或缺的一部分,而JDBC(Java Database Connectivity)是Java与数据库交互的标准接口。然而,直接使用JDBC进行数据库连接管理可能会导致资源浪费,...

    BoneCp连接池详解及和Hibernate配置(当今最快的连接池)

    &lt;property name="hibernate.connection.driver_class"&gt;com.mysql.jdbc.Driver&lt;/property&gt; &lt;property name="hibernate.show_sql"&gt;true ``` 同时,还需要在`bonecp.properties`中设置Hibernate相关的属性,例如: ``...

    bonecp0.7 所有jar包

    3. **其他可能的依赖**:虽然在描述中没有明确指出,但 BoneCP 可能还需要其他的库来支持其功能,如JDBC驱动(对应于特定的数据库,如MySQL、Oracle等),这些驱动通常需要单独添加到项目中,以确保 BoneCP 能够正确...

    Spring3中配置DBCP,C3P0,Proxool,Bonecp数据源

    bonecp.driverClass=org.gjt.mm.mysql.Driver bonecp.jdbcUrl=jdbc:mysql://localhost/manytomany?useUnicode=true&amp;characterEncoding=UTF-8 bonecp.username=root bonecp.password=2008 #分区数量 ...

    bonecp连接池demo

    config.setJdbcUrl("jdbc:mysql://localhost:3306/mydb"); config.setUsername("root"); config.setPassword("password"); config.setMinConnectionsPerPartition(5); config.setMaxConnectionsPerPartition(10...

    spring hibernate BoneCP設定

    - `driverClass`: 数据库驱动类,这里是MySQL的JDBC驱动。 - `jdbcUrl`: 连接数据库的URL。 - `username` 和 `password`: 数据库访问的用户名和密码。 - `idleConnectionTestPeriod`: 定期检查空闲连接的时间间隔...

    DBCP+C3P0+BoneCP连接池参数说明

    1. **driverClassName**: 指定JDBC驱动类名,例如`com.mysql.jdbc.Driver`。 2. **url**: 数据库连接URL,如`jdbc:mysql://localhost:3306/mydb`。 3. **username**: 数据库用户名。 4. **password**: 数据库密码。 ...

    BoneCP(连接oracle例子+jar包)

    BoneCP是一款高效的、开源的Java数据库连接池(JDBC Connection Pool)框架,它在性能上优于其他同类连接池,如C3P0和DBCP。本资料提供了使用BoneCP连接Oracle数据库的实例以及所需的jar包,帮助开发者快速理解和...

    bonecp连接池

    &lt;prop key="hibernate.connection.driver_class"&gt;com.mysql.jdbc.Driver&lt;/prop&gt; &lt;prop key="hibernate.connection.url"&gt;jdbc:mysql://127.0.0.1/yourdb&lt;/prop&gt; &lt;prop key="hibernate.connection.username"&gt;root...

    Spring+Mybatis+BoneCP配置实例

    &lt;property name="driverClass" value="com.mysql.jdbc.Driver"/&gt; &lt;property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test?useSSL=false"/&gt; ...

    BoneCP数据源应用

    1. `driverClass`: 指定数据库驱动类,例如“oracle.jdbc.driver.OracleDriver”。 2. `jdbcUrl`: 数据库连接字符串,用于指定数据库的位置。 3. `username` 和 `password`: 登录数据库的用户名和密码。 4. `...

    java jdbc 利用 bonecp 四线程同时向四张表插入记录

    java 向mysql 插入记录,用bonecp 多线程并行插入记录 用acer 3750g测试结果500-600条/秒/每张表,台式机更快一些约800条/秒/每张表,分析用的SQL语句 select max(num),min(num),avg(num) from ( select count(*) num...

Global site tag (gtag.js) - Google Analytics