您的位置:首页 > 编程语言 > Java开发

Java EE开发第六章:JDBC开发之DBCP连接池的使用

2017-09-19 12:31 316 查看
前言:连接池管理数据库的连接,作用就是提高项目的性能。就是在连接池初始化的时候存入一定数量的连接,用的时候通过方法获取,不用的时候归还连接即可。常用的连接池是DBCP和C3P0,这一章节我们先来认识一下DBCP连接池的用法。

--------使用步骤------

1.导入jar包(commons-dbcp-1.4.jar和commons-pool-1.5.6.jar)(请自行百度下载)



2.使用api

a.硬编码

//创建连接池
BasicDataSource ds = new BasicDataSource();

//配置信息
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql:///day07");
ds.setUsername("root");
ds.setPassword("1234");


b.配置文件

实现编写一个properties文件
//存放配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("src/dbcp.properties"));
//设置
//prop.setProperty("driverClassName", "com.mysql.jdbc.Driver");

//创建连接池
DataSource ds = new BasicDataSourceFactory().createDataSource(prop);
------代码实现Demo----

1、硬解码添加数据(数据库使用的是《Java EE开发第四章:JDBC的基本使用》):

@Test
//硬编码
public void f1() throws Exception{
//创建连接池
BasicDataSource ds = new BasicDataSource();

//配置信息
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql:///day07");
ds.setUsername("root");
ds.setPassword("123");

Connection conn=ds.getConnection();
String sql="insert into category values(?,?);";
PreparedStatement st=conn.prepareStatement(sql);

//设置参数
st.setString(1, "c0191");
st.setString(2, "饮p料");

int i = st.executeUpdate();
System.out.println(i);
//JdbcUtils.closeResource(conn, st, null);
}


2、文件配置添加数据:



@Test
public void f2() throws Exception{
//存放配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("src/dbcp.properties"));
//设置
//prop.setProperty("driverClassName", "com.mysql.jdbc.Driver");

//创建连接池
DataSource ds = new BasicDataSourceFactory().createDataSource(prop);

Connection conn=ds.getConnection();
String sql="insert into category values(?,?);";
PreparedStatement st=conn.prepareStatement(sql);

//设置参数
st.setString(1, "c012");
st.setString(2, "饮料1");

int i = st.executeUpdate();
System.out.println(i);
//JdbcUtils.closeResource(conn, st, null);
}
-----完------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: