database.properties:
driverClass=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.8.14:3306/day22_JDBC
username=root
password=123456
package Day29_JDBC.JDBC_Util;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
/**
* @Author quzheng
* @Date 2019/10/3 12:45
* @Version 1.0
* 数据库连接工具类
* 读取文件获取链接,执行一次,static{}
*/
public class JDBCUtilConfig {
private static Connection con;
private static String driverClass;
private static String url;
private static String username;
private static String password;
static{
try{
readConfig();
Class.forName(driverClass);
//找了半天,原来是这里重复定义了局部变量Connection con
//导致返回值仍然是域静态变量con = null
// Connection con = DriverManager.getConnection(url,username,password);
con = DriverManager.getConnection(url,username,password);
} catch (Exception ex){
throw new RuntimeException(ex+"数据库连接失败");
}
}
private static void readConfig() throws Exception{
InputStream in = JDBCUtilConfig.class.getClassLoader().getResourceAsStream("database.properties");
Properties pro = new Properties();
pro.load(in);
driverClass = pro.getProperty("driverClass");
url = pro.getProperty("url");
username = pro.getProperty("username");
password = pro.getProperty("password");
}
public static Connection getConnection(){
return con;
}
}
网友评论