使用c3p0连接池无法连接数据库
public void demo1() { Connection connection = null; PreparedStatement preparedStatement = null; ResultSet resultSet = null; try { //建立连接池 ComboPooledDataSource dateSource = new ComboPooledDataSource(); //建立连接 connection = dateSource.getConnection(); String sql = "select * from user"; preparedStatement = connection.prepareStatement(sql); resultSet = preparedStatement.executeQuery(); while (resultSet.next()){ System.out.println(resultSet.getInt("uid")+resultSet.getString("username")+resultSet.getString("password")+resultSet.getString("name")); } } catch (Exception e) { e.printStackTrace(); } finally { //在使用连接池时已经自动将connection的销毁操作变成了归还操作 JDBCUtil.release(resultSet, preparedStatement, connection); } }
<?xml version="1.0" encoding="UTF-8" ?> <c3p0-config> <default-config> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="jdbcUrl">jdbc:mysql://localhost:3306/jdbctest?useSSL=false</property> <property name="user">root</property> <property name="password">root</property> <property name="maxPoolSize">20</property> <property name="initialPoolSize">5</property> </default-config> </c3p0-config>
使用c3p0后一直报错没有合适驱动,尝试网上诸多方法后依旧无果,jar包重新添加依赖无用,希望老师解惑,谢谢!
1
收起
正在回答 回答被采纳积分+1
3回答
慕容5097141
2018-07-30 16:26:55
public class C3P0Util { private static final ComboPooledDataSource dataSource = new ComboPooledDataSource(); /** * 连接数据库 * @return connection * @throws SQLException */ public static Connection getConnection() throws SQLException { Connection connection = dataSource.getConnection(); return connection; } /** * 释放资源 */ public static void release(ResultSet rs,Statement statement,Connection connection){ if(rs!=null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } rs=null; } if(statement!=null){ try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } statement=null; } if(connection!=null){ try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } connection=null; } } public static void release(Statement statement,Connection connection){ if(statement!=null){ try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } statement=null; } if(connection!=null){ try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } connection=null; } } }
相似问题
登录后可查看更多问答,登录/注册
Java数据库开发与实战应用2018版
- 参与学习 人
- 提交作业 277 份
- 解答问题 4297 个
Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星