zoukankan      html  css  js  c++  java
  • 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是指定列名称
  • 相关阅读:
    20145334赵文豪《网络对抗》 后门原理与实践
    20145334赵文豪《网络对抗》-逆向及Bof基础实践
    20145333茹翔《网络对抗》Exp9 Web安全基础实践
    20145333茹翔 Exp8 Web基础
    20145333茹翔 Exp7 网络欺诈技术防范
    20145333茹翔《网络对抗技术》Exp6 信息搜集技术
    20145333茹翔 Exp5 MSF基础应用
    20145333茹翔 Exp5 利用nmap扫描
    20145333茹翔 Exp5 Adobe阅读器漏洞攻击
    20145333茹翔 Exp5 MS11_050
  • 原文地址:https://www.cnblogs.com/BaiChunLong/p/11385662.html
Copyright © 2011-2022 走看看