Druid数据库连接池
- 概念:其实就是一个容器(集合),存放数据库连接的容器。
- 好处:
1. 节约资源;
2. 用户访问高效。 - 实现:
1. 标椎接口:DataSource javax.sql包下的
2.方法
* 获取连接:getConnection();
* 归还连接:如果连接对象Connection是从连接池中获取的,那么调用Connection.close()方法,则不是关闭连接了,而是归还连接。
3.一般我们不去实现它,由数据库厂商来实现 - Druid:数据库连接池实现技术,由阿里巴巴提供的
1. 步骤:
1. 导入jar包
2. 定义配置文件:
* 是properties形式的
* 可以叫任意的名称,可以放在任意的目录下
3. 加载配置文件。Properties
4. 获取数据库连接池对象:通过工厂类来获取 DruidDataSourceFactory
5. 获取连接:getConnection
2. 定义工具类
1. 定义一个类 JDBCUtils
2. 提供静态代码块加载配置文件,初始化连接池对象
3. 提供方法
1. 获取连接方法:通过数据库连接池获取连接
2. 释放资源
3. 获取连接池的方法
Spring JDBC
- Spring框架对的JDBC简单封装。提供了一个JDBCTemplate对象简化了JDBC的开发。
- 步骤:
1. 导入jar包
2. 创建JDBCTemplate对象。依赖于数据源DataSource
* jdbcTemplate template = new jdbcTemplate(ds);
3. 调用jdbcTemplate的方法来完成CRUD的操作
* updata():执行DML语句。增、删、改语句
* queryForMap():查询结果,将结果集封装为map集合,将列名作为key,将值作为value 将这条记录封装为一个map集合
注意:这个方法查询的结果集长度只能是1
* queryForList():查询结果,将结果集封装为list集合
注意:将每一条记录封装为一个map集合,再将map集合封装到list集合中
* query():查询结果,将结果封装为JavaBean对象
query的参数:Rowmapper
一般我们是用BeanPropertyRowMapper实现类,可以完成数据到JavaBean的自动封装
new BeanPropertyRowMapper<类型>(类型.class)
* queryForObject:查询结果,将结果集封装为对象
一般用于聚合函数的查询
BeabUtils工具类,简化数据封装
populate(Object obj,Map map):将map集合的键值对信息,封装到对应的JavaBean对象中