顾名思义,数据库连接池本质上是个容器,负责分配和管理数据库连接——Connection,对标JDBC中的Conn对象。
一.简介
如果不存在连接池,则每次访问数据库时都需要建立新的连接对象,并在访问结束后销毁。长此以往会造成不小的资源浪费(资源不能复用)。
为了解决资源复用的问题,事先开辟一片空间(池),存放好数据库连接资源,用户在访问数据库时可以直接从池子里拿出,用完后归还——大大降低了底层建立服务的开销。
优点:
- 资源重用
- 提升系统响应速率
- 避免数据库连接遗漏
常见的数据库连接池:
- DBCP
- C3P0
- Druid(德鲁伊)
Connection不再由DriverManager来获取,而是用DataSourse的getConnection来获取。
二.Druid连接池
1.导入jar包
下载路径:Central Repository: com/alibaba/druidhttps://repo1.maven.org/maven2/com/alibaba/druid/
2.定义配置文件
3.加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream(相对路径即可));
4.获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDateSource(prop);
5.获取数据库连接
Connection connection = dataSource.getConnection();
获取路径的方法:
System.out.println(System.getProperty(user.dir));