package util;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
public class DBUtil {
private static DataSource dataSource;
static{
//在类加载时,对dataSource进行初始化(实现连接池)
//获取到配置文件的输入流
InputStream is = DBUtil.class.getClassLoader().getResourceAsStream("db.properties");
//创建一个properties对象,用来加载配置文件
Properties pro = new Properties();
try {
//将配置文件,加载入pro
pro.load(is);
//通过工厂,获取一个连接池的dataSource
dataSource = BasicDataSourceFactory.createDataSource(pro);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection(){
try {
//通过连接池,获取一个链接对象
return dataSource.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
public static void close(Connection conn,Statement state,ResultSet result){
if(result!=null){
try {
result.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
result=null;
}
if(state!=null){
try {
state.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
state=null;
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
conn =null;
}
}
}
properites配置文件
jdbc.url=jdbc:oracle:thin:@localhost:1521/xe
jdbc.user=system
jdbc.password=123456
jdbc.driverClass=oracle.jdbc.driver.OracleDriver
jdbc.initSize=20