1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- package com.sf.sysdemo.util;
- import com.alibaba.druid.pool.DruidDataSourceFactory;
- import javax.sql.DataSource;
- import java.io.IOException;
- import java.io.InputStream;
- import java.sql.Connection;
- import java.sql.SQLException;
- import java.util.Properties;
- // 工具类
- public class JDBCUtil {
- // 提供一个静态的数据源
- private static DataSource dataSource;
- // 静态初始化块
- static {
- Properties properties = new Properties();
- // 获得类加载器
- ClassLoader classLoader = JDBCUtil.class.getClassLoader();
- // 加载指定配置文件 获取输入流
- InputStream inputStream = classLoader.getResourceAsStream("jdbc.properties");
- try {
- // 将输入流加载进 properties对象中
- properties.load(inputStream);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- // 通过druid提供的工厂类 来创建出数据源
- try {
- dataSource = DruidDataSourceFactory.createDataSource(properties);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
- // 提供数据源
- public static DataSource getDataSource() {
- return dataSource;
- }
- // 提供数据库的连接
- public static Connection getConnection(){
- try {
- Connection connection = dataSource.getConnection();
- return connection;
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- }
|