【java基础:JDBC】基于DPCP连接池工具包和DBUtils工具包的数据库改查Demonstration

来源:互联网 发布:地面站软件下载 编辑:程序博客网 时间:2024/05/27 09:44

一,首先创建一个连接池工具类

package cn.itcast.jdbcutils;/* *  使用DBCP实现数据库的连接池 *  连接池配置,自定义类, *  最基本四项完整 *  对于数据库连接池其他配置,自定义 */import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSource;public class JDBCUtils{    //创建出BasicDataSource类对象private static BasicDataSource datasource = new BasicDataSource();//静态代码块,对象BasicDataSource对象中的配置,自定义static{//数据库连接信息,必须的datasource.setDriverClassName("com.mysql.jdbc.Driver");datasource.setUrl("jdbc:mysql://localhost:3306/day33_user");datasource.setUsername("root");datasource.setPassword("123");//对象连接池中的连接数量配置,可选的datasource.setInitialSize(10);//初始化的连接数datasource.setMaxActive(8);//最大连接数量datasource.setMaxIdle(5);//最大空闲数datasource.setMinIdle(1);//最小空闲}//定义静态方法,返回BasicDataSource类的对象public static DataSource getDataSource(){return datasource;}}
二,利用上面的连接池工具类进行数据库的改查操作

package cn.itcast.demo;/* *  测试写好的工具类, *  提供的是一个DataSource接口的数据源 *  QueryRunner类构造方法,接收DataSource接口的实现类 *  后面,调用方法update,query,无需传递他们Connection连接对象 */import java.sql.SQLException;import java.util.List;import org.apache.commons.dbutils.QueryRunner;import org.apache.commons.dbutils.handlers.ArrayListHandler;import cn.itcast.jdbcutils.JDBCUtils;public class QueryRunnerDemo{    public static void main(String[] args) {    select();}//定义2个方法,实现数据表的添加,数据表查询//QueryRunner类对象,写在类成员位置private static QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource()); //数据表查询public static void select(){String sql = "SELECT * FROM sort";try{List<Object[]> list = qr.query(sql, new ArrayListHandler());for(Object[] objs : list){for(Object obj : objs){System.out.print(obj+"\t");}System.out.println();}}catch(SQLException ex){throw new RuntimeException("数据查询失败");}}//数据表添加数据public static void insert(){String sql = "INSERT INTO sort (sname,sprice,sdesc)VALUES(?,?,?)";Object[] params = {"水果",100.12,"刚刚上市的核桃"};try{int row = qr.update(sql, params);System.out.println(row);}catch(SQLException ex){throw new RuntimeException("数据添加失败");}}}


阅读全文
0 0