视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
c3p0开源数据库连接池(DataSource)
2020-11-09 14:52:24 责编:小采
文档


②C3P0 数据库连接池(使用最简单方便) ③Apache Tomcat内置的连接池(apache dbcp)

实际应用时不需要编写连接数据库代码,直接从数据源获得数据库的连接。程序员编程时也应尽量使用这些数据源的实现,以提升程序的数据库访问性能。

使用时,需要新建java工程,在工程中建立“lib”目录,其中添加c3p0-0.9.1.2.jar和mysql-connector-java-5.0.8-bin.jar(mysql驱动)包,并add to build path。

第一种方法:不使用xml配置文件。

/**
 * 演示c3p0的使用方法
 * @project_name Day11 
 * @class_name C3P0Demo 
 * @author Dovinya
 * @data 2014-8-27 下午07:57:42 
 * @version 1
 * @notes
 */
public class C3P0Demo {
	
	@Test
	public void operateDatabase() {
	Connection conn =null;
	PreparedStatement ps = null;
	ResultSet rs = null;
	try {
//	Class.forName("com.mysql.jdbc.Driver");
//	conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day11", "root", "123");
//	ps = conn.prepareStatement("select * from account");
	ComboPooledDataSource dataSource = new ComboPooledDataSource();
	
	
	dataSource.setDriverClass("com.mysql.jdbc.Driver");
	dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/day11");
	dataSource.setUser("root");
	dataSource.setPassword("123");
	
	
	conn = dataSource.getConnection();
	ps = conn.prepareStatement("select * from account");
	rs = ps.executeQuery();
	
	while(rs.next()){
	String name = rs.getString("name");
	System.out.println(name);
	}
	
	} catch (Exception e) {
	e.printStackTrace();
	}finally{
	if(rs!=null){
	try {
	rs.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	rs=null;
	}
	}
	
	if(ps!=null){
	try {
	ps.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	ps=null;
	}
	}
	
	if(conn!=null){
	try {
	conn.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	conn=null;
	}
	}	
	
	}
	}
	
}
第二种方法:使用xml配置文件,这种方法更常见和普遍。

先新建xml文件,命名为c3p0-config.xml,在其中添加如下代码:



	
	com.mysql.jdbc.Driver
	jdbc:mysql:///day11
	root
	123

	3 
	10 
	2 
	10 
	
然后,新建java文件,在其中添加如下代码:
import com.mchange.v2.c3p0.ComboPooledDataSource;
/**
 * 演示c3p0的使用方法
 * @project_name Day11 
 * @class_name C3P0Demo 
 * @author Dovinya
 * @data 2014-8-27 下午07:57:42 
 * @version 1
 * @notes
 */
public class C3P0Demo {
	
	@Test
	public void operateDatabase() {
	Connection conn =null;
	PreparedStatement ps = null;
	ResultSet rs = null;
	try {

	ComboPooledDataSource dataSource = new ComboPooledDataSource();
	
	conn = dataSource.getConnection();
	ps = conn.prepareStatement("select * from account");
	rs = ps.executeQuery();
	
	while(rs.next()){
	String name = rs.getString("name");
	System.out.println(name);
	}
	
	} catch (Exception e) {
	e.printStackTrace();
	}finally{
	if(rs!=null){
	try {
	rs.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	rs=null;
	}
	}
	
	if(ps!=null){
	try {
	ps.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	ps=null;
	}
	}
	
	if(conn!=null){
	try {
	conn.close();
	} catch (SQLException e) {
	
	e.printStackTrace();
	}finally{
	conn=null;
	}
	}	
	
	}
	}
	
}
开发时常用。

下载本文
显示全文
专题