实训day02
2017-12-19 本文已影响10人
二慧Liu
JDBC
JDBC的六大操作:
1:注册
2:获得
3:获取执行sql语句的
4:执行sql 语句,并返回
5:处理
6:释放资源
上述操作代码
DBUtils 连接池
- DBUtils 是一个简化JDBC开发的工具包
- 连接池是简化开发,减少连接对象的创建与销毁,提高cpu的性能
- 连接池由 DBCP:Apache 推出的Database Connection Pool 的 jar包 提供
四个 jar包
- 数据库连接包
mysql-connector-java-5.1.37-bin.jar- 连接池的包
commons-dbcp-1.4.jar
commons-pool-1.5.6.jar- DBUtils包
commons-dbutils-1.4.jar
DataSource
- 使用连接池技术管理连接对象
实现数据库的增删改查
增加(删除和修改:将sql改为相应的sql语句)
数据库增加代码
JDBCUtils 专门完成配置连接池的一个类 工具类
连接池
查询
前提:
javabean类
- 需要有空参构造
- 属性私有
- 提供set get方法
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<类型>
ColumnListHandler : 多行单列处理器,把结果集转换成List<Object>
(写项目的时候 级联的时候要用) 使用的时候指定某一列名称或编号 不写默认是第一列。ArrayListHandler : 多行处理器,把结果集的每一行记录 数据 存储在一个Object数组中 最终在存在List<Object[ ]>
MapListHandler : 多行处理器 将结果集每一行转换成Map 再将每一个map存储在List
单行记录的处理器:
BeanHandler : 单行处理器,把结果集转换成一个对象,该处理器需要一个Class类型参数 类名.class——>(与反映相关,转换类型)
ScalarHandler:单行单列处理器 把结果集 使用Object接收 一般用于 聚合函数 比如 统计求和
ArrayHandler :单行处理器,把结果集 的第一行记录 数据 全部存储在一个Object数组中
MapHandler : 单行处理器 将结果集转换成 Map<String,Object> 键是列名
Enjoy