黑马程序员技术交流社区
标题:
学习经历
[打印本页]
作者:
张治富
时间:
2018-11-1 20:11
标题:
学习经历
今天自己定义了一个JDBC的工具类,突然感觉自己是个大神了,有点厉害啊,但是其实是老师先讲了一遍思路,
然后才让我们自己写的,但是我相信在我的努力学习下,总有一天我能凭自己写出来比这更好的代码。
加油!!!
/*
定义工具类
1. 定义一个类 JDBCUtils
2. 提供静态代码块加载配置文件,初始化连接池对象
3. 提供方法
1. 获取连接方法:通过数据库连接池获取连接
2. 释放资源
3. 获取连接池的方法 */
import
com.alibaba.druid.pool.DruidDataSourceFactory;
import
day06.Demo02Druid;
import
javax.sql.DataSource;
import
java.io.InputStream;
import
java.sql.Connection;
import
java.sql.ResultSet;
import
java.sql.SQLException;
import
java.sql.Statement;
import
java.util.Properties;
public class
JDBCUtilsPool {
//定义成员变量 DataSource
private static
DataSource
ds
=
null
;
static
{
try
{
//加载配置文件
Properties pro =
new
Properties();
InputStream is = JDBCUtilsPool.
class
.getClassLoader().getResourceAsStream(
"druid.properties"
);
pro.load(is);
//2.获取DataSource
ds
= DruidDataSourceFactory.
createDataSource
(pro);
}
catch
(Exception e) {
e.printStackTrace();
}
}
//获取连接
public static
Connection getConnection()
throws
SQLException {
return
ds
.getConnection();
}
//获取连接池方法
public static
DataSource getDataSource() {
return
ds
;
}
//释放资源
public static void
close(ResultSet rs, Statement stmt, Connection conn) {
if
(rs !=
null
) {
try
{
rs.close();
}
catch
(SQLException e) {
e.printStackTrace();
}
}
if
(stmt !=
null
) {
try
{
stmt.close();
}
catch
(SQLException e) {
e.printStackTrace();
}
}
if
(conn !=
null
) {
try
{
conn.close();//归还连接
}
catch
(SQLException e) {
e.printStackTrace();
}
}
}}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2