使用 java程序 操作 数据库

2017-12-19  本文已影响0人  冰天雪地_6409

我们以后 开发的时候
使用 java程序 操作 数据库

JDBC
简化 DBUtils
提高性能的 连接池技术

write less do more

1: 创建一个项目

2:创建对应数据库 并且对应数据库中 有表 有数据

3:导包操作
四个jar包

4:使用 DBUtils 技术 完成对数据库表中 数据的增删改查

  创建 一个javabean类 
    javabean类 是符合某种 规则的一种类
    A:必须有空参构造 
    B:私有的属性
    C:提供对应set  get方法 
  一般来说我们创建的javabean文件 中的字段 与表中 对应的属性 一模一样

  JDBCUtils工具类 里面完成连接池的配置 并且有个获取连接池的方法 
  (一般开发中只写一次,对于大家来说 复制就可以)
  重点记住 需要我们将数据库的配置信息 改成你自己的 

5:好了 现在就可以使用 DBUtils技术 完成增删改查了

  使用套路 是 
     
  1:创建 QueryRunner对象
    QueryRunner qr = new QueryRunner(JDBCUtils.getDS());

  2: 执行sql语句
     String sql = "你要写的sql语句";(sql语句中的参数 变成?占位)
     Object[] params = {?对应的哪些值};(按照顺序 写进来皆可以)

     如果是增删改查语句 
       那么 执行的
          qr.update(sql,params);
      返回值可以要可以不要 
      返回的是  该条更新 影响了 几行

    如果 是查询语句 
       这个时候  
         我们可以根据 想要的不同的 处理效果 自己来进行选择 

     qr.query(sql,rsh,params)

     rsh  ResultSetHandler
              代表 将结果集 以什么形式进行处理 
          这个参数 是一种处理方式 

        如果我要处理的是 多行记录 
      每行记录 都想将结果处理成 一个对象 
      最终变成多个对象  

            BeanListHandler 多行处理器  把结果集转换成List<类型>


    我 select之后 得到的 是一张二维表,然后我们还要对二维表解析,得到最终的数据,
    这种解析 并不是很容易 
    那么这个时候  DBUtils出来的时候进行优化 ,
    提供几种处理方式   这些处理方式 都可以成为ResultSetHandler

    有的 数据 想要封装到List集合中 有的 想要封装到Map 中  还有的 想要成为一个对象

    BeanHandler:单行处理器,把结果集转换成一个对象,该处理器需要一个Class类型参数 类名.class
                                                                                要转换对象的类型

    BeanListHandler:多行处理器,把结果集转换成List<类型>

            下面两个需要知道 

    ColumnListHandler:多行单列处理器,把结果集转换成List<Object> ,(写项目的时候 级联的时候要用)
    使用的时候指定某一列名称或编号 不写默认是第一列。

    ScalarHandler:单行单列处理器  把结果集  使用Object接收  一般用于 聚合函数 比如 统计求和
    
    
            补充内容  完全不用懂

    ArrayHandler :单行处理器,把结果集 的第一行记录 数据 全部存储在一个Object数组中

    ArrayListHandler: 多行处理器,把结果集的每一行记录 数据 存储在一个Object数组中 最终在存在List<Object[]>

    MapHandler:单行处理器 将结果集转换成 Map<String,Object> 键是列名

    MapListHandler:多行处理器 将结果集每一行转换成Map 再将每一个map存储在List 
上一篇 下一篇

猜你喜欢

热点阅读