jdbc操作数据库(使用连接池技术)查询封装结果

Posted baichunlong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdbc操作数据库(使用连接池技术)查询封装结果相关的知识,希望对你有一定的参考价值。

连接池(DataSource)
    目的是为了节省创建连接和销毁连接所需要花费的时间 提高程序的执行效率
    
    DruidDataSource
        创建连接池对象
            1:
                DruidDataSource d = new DruidDataSource();
                d.setDriverClassName();
                d.setUrl()
                d.setUserName()
                d.setPassword()
            2:    准备一个db.properties    
                Properties p = new Properties();
                p.load("src/db.properties"):
                DruidDataSource d = DruidDataSourceFactory.createDataSource(p);
    C3P0
            1:
                ComboPooledDataSource d = new ComboPooledDataSource();
                d.setDriveClass()
                d.setJdbcUrl()
                d.setUser()
                d.setPassword()
                
            2:    在src下面 准备c3p0-config.xml
                ComboPooledDataSource d = new ComboPooledDataSource();
                ComboPooledDataSource d = new ComboPooledDataSource(String DataSource);
 
DButils工具类
            QueryRunner
                QueryRunner()        需要事务管理
                QueryRunner(DataSource ds)    不需要事务管理
                
 
                //可以实现增删改操作
                update(String sql,Object...params)
                update(Connection conn,String sql,Object...params)
                
                //实现查询操作
                query(String sql,ResultSetHandler rs,Object...params)
                query(Connection conn,String sql,ResultSetHandler rs,Object...params)
                
                ResultSetHandler是一个接口 该接口中有一个抽象方法handle()
                作业:自定义实现类实现ResultSetHandler接口并重写其handle方法(方法体的实现参看下午demo1)
                
                ArrayHandler        把每条表记录封装到一个Object数组中
                ArrayListHandler    把每条表记录封装到一个Object数组中 再把所有数组放入list集合中
                
                BeanHandler            把每条表记录的字段封装到指定类型的属性上
                BeanListHandler        把每条表记录的字段封装到指定类型的属性上 并且把多个该类型的对象放入list集合中
                
                MapHandler            把每条表记录的字段名和字段值放入到Map集合中
                MapListHandler        把每条表记录的字段名和字段值放入到Map集合中 再把所有的Map集合封装到List集合中
                
                //了解
                columnListHandler    封装指定列的查询记录
                scalarHandler        查询单值记录
                keyedHandler        把查询到的每条记录放入Map集合中 再把该Map集合放入外层Map集合的value位置 key是指定列名称

以上是关于jdbc操作数据库(使用连接池技术)查询封装结果的主要内容,如果未能解决你的问题,请参考以下文章

DBUtils和连接池

用Java手动封装JDBC连接池

JDBCTemplate基本使用

简看线程池原理

封装简易版数据库连接池

封装简易版数据库连接池