public class JDBCUtilsByDruid {
private JDBCUtilsByDruid(){}
private static DataSource dataSource;
static {
Properties properties = new Properties();
try {
properties.load(new FileInputStream("src\\druid.properties"));
dataSource = DruidDataSourceFactory.createDataSource(properties);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
//获取连接
public static Connection getConnection() {
try {
return dataSource.getConnection();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
//关闭连接: 在连接池技术中,并不是真正的关闭连接,而是把连接放回连接池;
public static void close(ResultSet resultSet, Statement statement, Connection connection) {
try {
if (resultSet != null) {
resultSet.close();
}
if (statement != null) {
statement.close();
}
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
配置文件:
driverClassName=com.mysql.cj.jdbc.Driver
username=root
password=root
url=jdbc:mysql://localhost:3306/users?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true
initialSize=10
minIdle=5
maxActive=50
maxWait=5000