连接三种数据库连接池的实现方法

309 阅读1分钟

# 一、C3P0连接池

方式一

ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass( "com.mysql.jdbc.Driver" ); 
cpds.setJdbcUrl( "jdbc:mysql://localhost:3306/test" );
cpds.setUser("root");                                  
cpds.setPassword("******"); 
//通过设置相关的参数,对数据库连接池进行管理:
//设置初始时数据库连接池中的连接数
cpds.setInitialPoolSize(10);

Connection conn = cpds.getConnection();
System.out.println(conn);

方式二:使用配置文件

ComboPooledDataSource cpds = new ComboPooledDataSource("hellc3p0");
   Connection conn = cpds.getConnection();
   System.out.println(conn);
}

二、DBCP连接池

方式一

//创建了DBCP的数据库连接池
BasicDataSource source = new BasicDataSource();

//设置基本信息
source.setDriverClassName("com.mysql.jdbc.Driver");
source.setUrl("jdbc:mysql:///test");
source.setUsername("root");
source.setPassword("abc123");

//还可以设置其他涉及数据库连接池管理的相关属性:
source.setInitialSize(10);
source.setMaxActive(10);
//。。。

Connection conn = source.getConnection();
System.out.println(conn);

方式二:使用配置文件

Properties pros = new Properties();
      
      //方式1:
//    InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("dbcp.properties");
      //方式2:
      FileInputStream is = new FileInputStream(new File("src/dbcp.properties"));
      
      
      pros.load(is);
      DataSource source = BasicDataSourceFactory.createDataSource(pros);
      
      Connection conn = source.getConnection();
      System.out.println(conn);

三、Druid连接池

Properties pros = new Properties();

InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");

pros.load(is);

DataSource source = DruidDataSourceFactory.createDataSource(pros);
Connection conn = source.getConnection();
System.out.println(conn);

三种数据库连接池都需要导入相关驱动,三种实现连接的方法大同小异,最常用的是阿里的Druid连接池。