package com.test.util;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import org.junit.Test;
public class WDBUtils {
//定义变量记录从properties配置文件中取出和数据库对应的数据
private static String driver = null;
private static String url = null;
private static String userName = null;
private static String password = null;
//静态块,获取配置文件中的信息
static{
//利用类加载器加载相对应的配置文件
InputStream in = WDBUtils.class.getClassLoader().getResourceAsStream("dbconfig.properties");
//利用Properties类读取配置文件中的信息
Properties prop = new Properties();
try {
/**
* 从输入流中读取属性列表(键和元素对)。输入流按 load(Reader) 中所指定的、
* 简单的面向行的格式,并假定使用 ISO 8859-1 字符编码;即每个字节都是 Latin1 字符。
* 对于非 Latin1 的字符和某些特殊字符,可以使用 Unicode 转义以键和元素的形式来表示
* 它们。
*/
prop.load(in);
driver = prop.getProperty("registDriver");
url = prop.getProperty("url");
userName = prop.getProperty("username");
password = prop.getProperty("password");
Class.forName(driver);
} catch (Exception e) {
e.printStackTrace();
}finally{
//关闭资源
if(in != null){
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
/**
* 获取数据库连接
* @return
* @throws SQLException
*/
public static Connection getConnection() throws SQLException{
return DriverManager.getConnection(url, userName, password);
}
/**
* 释放资源
* @param conn
* @param stm
* @param rs
*/
public void releaseResource(Connection conn,Statement stm,ResultSet rs){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}finally{
rs = null;
if(stm != null){
try {
stm.close();
} catch (SQLException e) {
e.printStackTrace();
}finally{
stm = null;
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
}
}
//测试是否连接成功
@Test
public void test() throws Exception{
Connection conn = WDBUtils.getConnection();
System.out.println(conn);
}
}
对应的properties配置文件:
mysal数据库:
registDriver=com.mysql.jdbc.Driver
url=jdbc:my:sql://localhost:my
username=root
password=root
oracle数据库
url = jdbc:oracle:thin:@localhost:1521:orcl";
driver = oracle.jdbc.driver.OracleDriver