*连接池
c3p0连接池的使用:
1.导入c3p0连接池的依赖.jar
2.在src目录下新建c3p0-config.xml文件
3.创建连接池对象
ComboPooledDataSource ds = new ComboPooledDataSource("mysql");
4.获取连接对象
Connection con = ds.getConnection();
5.归还连接对象
con.close()
*dbutils工具类
1.导入dbutils包
2.创建工具类对象
ComboPooledDataSource ds = new ComboPooledDataSource("mysql");
QueryRunner qr = new QueryRunner(qr);
3.封装的方法
增删改方法: update(String sql,Object...params);
查询方法query(String sql,ResultSetHandler rs,object...params);
4.ResultSetHandler
ResultSetHandler实现类
①ArrayHandler:把结果集中的第一行数据转成对象数组。
②ArrayListHandler:把结果集中的每一行数据都转成一个对象数组,再存放到List中。
③BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中。
④BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。
⑤MapHandler:将结果集中的第一行数据封装到一个Map里,key是列名,value就是对应的值。
⑥MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List
⑦ColumnListHandler:将结果集中某一列的数据存放到List中。
⑧KeyedHandler(name):将结果集中的每一行数据都封装到一个Map里(List<Map>),再把这些map再存到一个map里,其key为指定的列。
⑨ScalarHandler:获取结果集中第一行数据指定列的值,常用来进行单值查询
*事务
什么是事务?
事务(TRANSACTION)是作为单个逻辑工作单元执行的一系列操作
事务是一个不可分割的工作逻辑单元
事务四大特性:
事务必须具备以下四个属性,简称ACID 属性
-原子性(Atomicity)
-一致性(Consistency)
-隔离性(Isolation)
-持久性(Durability)