#|【JDBC】3.工具类-JDBCUtils
将获取连接操作以及资源的关闭放到一个工具类中—JDBCUtils
将获取连接操作代码
//提供Properties,并加载指定配置文件的流
Properties pros = new Properties();
InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");
//加载
pros.load(is);
//通过DruidDataSourceFactory创建一个数据源
DataSource dataSource = DruidDataSourceFactory.createDataSource(pros);
//通过数据源获取连接
Connection connection = dataSource.getConnection();
return connection;
JDBCUtils 类
package com.atguigu.java1.util;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
/**
* 提供JDBC的工具类,用于获取数据库的连接等操作
*/
public class JDBCUtils {/**
* 获取数据库连接的方法
*
* @return
* @throws Exception
*/
public static Connection getConnection() throws Exception {//通过数据源获取连接
Connection connection = dataSource.getConnection();
return connection;
}private static DataSource dataSource ;
static{
//静态代码块
//提供Properties,并加载指定配置文件的流
try {Properties pros = new Properties();
InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");
pros.load(is);
//由于静态代码块只执行一次,所以我们自始至终就创建过一个DataSource
dataSource = DruidDataSourceFactory.createDataSource(pros);
} catch (Exception e) {e.printStackTrace();
}}//关闭连接
public static void close(Connection connection){if(connection != null){try {connection.close();
} catch (SQLException e) {e.printStackTrace();
}
}
}}
测试工具类
package com.atguigu.java1.test;
import com.atguigu.java1.util.JDBCUtils;
import org.junit.Test;
import java.sql.Connection;
/**
* 测试工具类
*/
public class JDBCUtilsTest {@Test
public void test1() throws Exception {Connection connection = JDBCUtils.getConnection();
System.out.println(connection);
}
}
【#|【JDBC】3.工具类-JDBCUtils】
文章图片
推荐阅读
- 宽容谁
- 我要做大厨
- 增长黑客的海盗法则
- 画画吗()
- 2019-02-13——今天谈梦想()
- 远去的风筝
- 三十年后的广场舞大爷
- 叙述作文
- 20190302|20190302 复盘翻盘
- 学无止境,人生还很长