两种开源的数据源---C3P0和DBCP
来源:互联网 发布:dts音效软件怎么下载 编辑:程序博客网 时间:2024/05/20 04:31
前提概要:
c3p0是一种开源的数据源,也是hibernate推荐使用的数据源。这里我们只使用应用程序单独测试下这两种数据源,有兴趣的同学可以整合下服务器再测试下这两种数据源。dbcp也是一种开源的数据源,不过性能上并没有c3p0那样好,所以我们一般推荐使用c3p0。我们通常说的连接池是包含在数据源中,数据源通常包含连接池和连接池管理。
下面根据eg测试下这两种数据源单独在应用程序中的具体使用。 在文章的最后,我们附上这两种数据源的jar文件。
1.c3p0
工具类:
c3p0是一种开源的数据源,也是hibernate推荐使用的数据源。这里我们只使用应用程序单独测试下这两种数据源,有兴趣的同学可以整合下服务器再测试下这两种数据源。dbcp也是一种开源的数据源,不过性能上并没有c3p0那样好,所以我们一般推荐使用c3p0。我们通常说的连接池是包含在数据源中,数据源通常包含连接池和连接池管理。
下面根据eg测试下这两种数据源单独在应用程序中的具体使用。 在文章的最后,我们附上这两种数据源的jar文件。
1.c3p0
工具类:
import java.beans.PropertyVetoException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class JdbcC3p0 {
public static ComboPooledDataSource getDataSource() {
ComboPooledDataSource ds = new ComboPooledDataSource();
try {
ds.setDriverClass("com.mysql.jdbc.Driver"); //加载驱动
ds.setJdbcUrl("jdbc:mysql://localhost:3306/test");//数据库连接的url
ds.setUser("root");//用户名
ds.setPassword("root");//密码
ds.setMaxPoolSize(20);//最大连接数
ds.setMinPoolSize(5);//最小
ds.setInitialPoolSize(10);//初始连接数
ds.setMaxStatements(200);//可缓存的最大statement对象
} catch (PropertyVetoException e) {
e.printStackTrace();
}
return ds;
}
}
2 .dbcp数据源
工具类:
测试主类:
}
2 .dbcp数据源
工具类:
import java.sql.SQLException;
import org.apache.commons.dbcp.BasicDataSource;
public class JdbcPool {
public static BasicDataSource getDataSource() throws SQLException {
BasicDataSource ds = new BasicDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver"); //加载驱动
ds.setUrl("jdbc:mysql://localhost:3306/test");//数据库连接的url
ds.setUsername("root");//数据库用户名
ds.setPassword("root");//数据库用户的密码
ds.setInitialSize(5); //初始连接数
ds.setMaxActive(20);//最大连接数
ds.setMinIdle(2);//空闲连接数
return ds;
}
}测试主类:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Test {
public static void main(String[] args) throws Exception {
Connection conn = JdbcC3p0.getDataSource().getConnection();//使用c3p0连接池
//Connection conn =JdbcPool.getDataSource().getConnection();//使用dbcp连接池
String sql = "select * from person";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()){
System.out.println(rs.getInt(1)+","+rs.getString(2));
}
conn.close(); //归还连接池
}
- 两种开源的数据源---C3P0和DBCP
- c3p0和dbcp数据源配置
- DBCP数据源,C3P0数据源
- Spring的数据源配置 DBCP、C3P0、JNDI
- Spring的数据源配置 DBCP、C3P0、BoneCP
- Spring的数据源配置 DBCP、C3P0、BoneCP
- Spring的数据源配置 DBCP、C3P0、BoneCP
- c3p0、dbcp数据源在spring的配置
- Spring数据源C3P0,DBCP
- dbcp和c3p0数据源配置,建议用c3p0
- 数据库连接池(数据源)2: 开源数据源的使用DBCP和C3P0
- spring的c3p0和dbcp
- spring的c3p0和dbcp
- c3p0 和 dbcp的配置
- c3p0和dbcp的区别
- c3p0和dbcp的比较
- c3p0和dbcp的区别
- DBCP和C3P0的区别
- cocos2d-x 2.1 实现精灵拖动
- 批量修改指定路径文件名
- Struts2+Jquery实现ajax并返回json类型数据
- 基于内存映射之I/O----NIO
- hibernate 事务嵌套导致org.hibernate.TransactionException: Transaction not successfully started
- 两种开源的数据源---C3P0和DBCP
- 【转】一枚“程序媛”的找工作经验与教训
- mac上ndk环境配置
- c++和lua交互
- 每个测试文件前输入标识自己的字符串
- HDU 3397 Sequence operation
- 杭电ACM2037
- 浅析Java浅克隆机制
- 工业自动化领域的安全保护