方式1:正常获取
package TTest;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class JDBCUtils {
static Connection getConnection(){
Connection connection =null;
InputStream resourceAsStream = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties");
Properties properties = new Properties();
try {
properties.load(resourceAsStream);
} catch (IOException e) {
e.printStackTrace();
}
try {
connection = DriverManager.getConnection(properties.getProperty("url"),properties.getProperty("user"),properties.getProperty("password"));
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return connection;
}
static void closeConnection(Connection connection, Statement statement, ResultSet resultSet){
if (null!=connection){
try {
connection.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=statement){
try {
statement.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=resultSet){
try {
resultSet.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
static void closeConnection(Connection connection, Statement statement){
if (null!=connection){
try {
connection.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=statement){
try {
statement.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
方式2:利用数据库i连接池
package TTest;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.commons.dbcp2.BasicDataSourceFactory;
import javax.sql.DataSource;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
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 JDBCUtilsNew {
//用C3P0方式获取数据库连接
private static ComboPooledDataSource cpds =new ComboPooledDataSource("helloc3p0");
public static Connection getConnection(){
Connection connection =null;
try {
connection = cpds.getConnection();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return connection;
}
public void closeConnection(Connection connection, Statement statement, ResultSet resultSet){
if (null!=connection){
try {
connection.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=statement){
try {
statement.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=resultSet){
try {
resultSet.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
public static void closeConnection(Connection connection, Statement statement){
if (null!=connection){
try {
connection.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (null!=statement){
try {
statement.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
//使用DBCP数据库连接池技术获取数据库连接
private static DataSource source;
static {
Properties properties = new Properties();
// //方式一:
// InputStream resourceAsStream = ClassLoader.getSystemClassLoader().getResourceAsStream("DBCP.peoperties");
// properties.load(resourceAsStream);
//方式二:
try {
FileInputStream fileInputStream = new FileInputStream(new File("src/DBCP.properties"));
properties.load(fileInputStream);
source = BasicDataSourceFactory.createDataSource(properties);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection1(){
Connection connection = null;
try {
connection = source.getConnection();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return connection;
}
//使用druid数据库连接池获取数据库连接
private static DataSource source1;
static {
Properties properties = new Properties();
InputStream resourceAsStream = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");
try {
properties.load(resourceAsStream);
} catch (IOException e) {
e.printStackTrace();
}
try {
source1 = DruidDataSourceFactory.createDataSource(properties);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection2(){
Connection connection =null;
try {
connection = source1.getConnection();
if (null ==connection)
System.out.println("数据库连接失败!");
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return connection;
}
}



