创建jdbcutils简化操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package utils;
/*
    Druid数据库连接池 JDBC 工具类
 */
 
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 JDBCUtils {
    private static DataSource ds;
 
    static {
 
        try {
            //1.加载配置文件
            Properties pro = new Properties();
            //使用ClassLoader加载配置文件,获取字节输入流
            InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");
            pro.load(is);
 
            //2.初始化连接池对象
            ds = DruidDataSourceFactory.createDataSource(pro);
 
        catch (IOException e) {
            e.printStackTrace();
        catch (Exception e) {
            e.printStackTrace();
        }
    }
 
    /**
     * 获取连接池对象
     */
    public static DataSource getDataSource() {
        return ds;
    }
 
    /**
     * 获取连接Connection对象
     */
    public static Connection getConnection() throws SQLException {
        return ds.getConnection();
    }
}

  配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
driverClassName=com.mysql.cj.jdbc.Driver
 
url=jdbc:mysql://localhost:3306/qyuan
 
username=root
 
password=root
 
initialSize=5
 
maxActive=10
 
maxWait=3000
 
 
 
##防止版本不一致报错
filters=stat
timeBetweenEvictionRunsMillis=60000
minEvictableIdleTimeMillis=300000
validationQuery=SELECT 1
testWhileIdle=true
testOnBorrow=false
testOnReturn=false
poolPreparedStatements=false
maxPoolPreparedStatementPerConnectionSize=200

  再导入相应的jar报就ok了

posted @ 2022-04-21 07:58  一个小弱鸡  阅读(38)  评论(0)    收藏  举报