当前位置:Gxlcms > 数据库问题 > 00316_DBCP连接池

00316_DBCP连接池

时间:2021-07-01 10:21:17 帮助过:10人阅读

import javax.sql.DataSource; 2 3 import org.apache.commons.dbcp.BasicDataSource; 4 5 public class JDBCUtils { 6 public static final String DRIVER = "com.mysql.jdbc.Driver"; 7 public static final String URL = "jdbc:mysql://localhost:3306/mybase"; 8 public static final String USERNAME = "root"; 9 public static final String PASSWORD = "root"; 10 /* 11 * 创建连接池BasicDataSource 12 */ 13 public static BasicDataSource dataSource = new BasicDataSource(); 14 // 静态代码块 15 static { 16 // 对连接池对象 进行基本的配置 17 dataSource.setDriverClassName(DRIVER); // 这是要连接的数据库的驱动 18 dataSource.setUrl(URL); // 指定要连接的数据库地址 19 dataSource.setUsername(USERNAME); // 指定要连接数据的用户名 20 dataSource.setPassword(PASSWORD); // 指定要连接数据的密码 21 } 22 23 /* 24 * 返回连接池对象 25 */ 26 public static DataSource getDataSource() { 27 return dataSource; 28 } 29 }

  (4)增

  初始数据:

  技术分享图片

 1 import java.sql.SQLException;
 2 
 3 import org.apache.commons.dbutils.QueryRunner; 5 import org.junit.Test;
 6 
 7 /*
 8  * 演示使用DBUtils工具  完成数据库表的增删改查
 9  */
10 public class Demo {
11     // 插入功能
12     @Test
13     public void insert() {
14         try {
15             // 获取一个用来执行SQL语句的对象 QueryRunner
16             QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
17             String sql = "INSERT INTO Sort(sname) VALUES(?)";
18             Object[] params = { "遥控器" };
19             int line = qr.update(sql, params);
20             // 结果集处理
21             System.out.println("line = " + line);
22 
23         } catch (SQLException e) {
24             throw new RuntimeException(e);
25         }
26     }
27 
28 }

  运行结果:

  技术分享图片

  (5)删

 1 import java.sql.SQLException;
 2 
 3 import org.apache.commons.dbutils.QueryRunner;
 4 import org.junit.Test;
 5 
 6 /*
 7  * 演示使用DBUtils工具  完成数据库表的增删改查
 8  */
 9 public class Demo {
10     // 删除功能
11     @Test
12     public void delete() {
13         try {
14             // 创建一个QueryRunner对象,用来完成SQL语句的执行
15             QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
16             // 执行SQL语句
17             String sql = "DELETE FROM Sort WHERE sid = ?";
18             Object[] params = { 7 };
19             int line = qr.update(sql, params);
20             // 结果集的处理
21             System.out.println("line=" + line);
22 
23         } catch (SQLException e) {
24             throw new RuntimeException(e);
25         }
26     }
27 
28 }

  运行结果:
  技术分享图片

  (6)改

 1 import java.sql.SQLException;
 2 
 3 import org.apache.commons.dbutils.QueryRunner;
 4 import org.junit.Test;
 5 
 6 /*
 7  * 演示使用DBUtils工具  完成数据库表的增删改查
 8  */
 9 public class Demo {
10     // 更新功能
11     @Test
12     public void update() {
13         try {
14             // 创建一个QueryRunner对象,用来完成SQL语句的执行
15             QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
16             // 执行SQL语句
17             String sql = "UPDATE Sort SET sid = sid+2 WHERE sname=?";
18             Object[] params = { "遥控器" };
19             int line = qr.update(sql, params);
20             // 结果集的处理
21             System.out.println("line=" + line);
22 
23         } catch (SQLException e) {
24             throw new RuntimeException(e);
25         }
26     }
27 
28 }

  运行结果:

  技术分享图片

  (7)查

 1 import java.sql.SQLException;
 2 
 3 import org.apache.commons.dbutils.QueryRunner;
 4 import org.apache.commons.dbutils.handlers.BeanHandler;
 5 import org.junit.Test;
 6 
 7 /*
 8  * 演示使用DBUtils工具  完成数据库表的增删改查
 9  */
10 public class Demo {
11     // 查询功能,将结果集中第一条记录封装到一个指定的javaBean中。
12     @Test
13     public void search() {
14         try {
15             // 获取QueryRunner
16             QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
17             // 执行SQL语句
18             String sql = "SELECT * FROM sort";
19             Object[] params = {};
20             Sort p = qr.query(sql, new BeanHandler<Sort>(Sort.class), params);
21             // 结果集处理
22             System.out.println(p);
23 
24         } catch (SQLException e) {
25             throw new RuntimeException(e);
26         }
27     }
28 
29 }

  运行结果:

  技术分享图片

  (8)常见配置项

  技术分享图片

  参考文档链接:参考文档

00316_DBCP连接池

标签:int   程序   参考   一个   用户名   commons   time   get   ons   

人气教程排行