packageJdbcUtils;importjava.io.FileReader;importjava.io.IOException;importjava.net.URL;import java.sql.*;importjava.util.Properties;/**jdbc 工具类*/
public classJdbcUtils {private staticString url;private staticString user;private staticString password;private staticString driver;//文件的读取,只读取一次拿到所有值 使用静态代码块
static{try{//读取资源文件 获取值 创建 Prpperties集合类
Properties pro=newProperties();//获得src路径------>ClassLoader() 类加载器
ClassLoader classLoader = JdbcUtils.class.getClassLoader();//获得类加载器
URL res = classLoader.getResource("jdbc.properties");//得到资源文件
String path = res.getPath(); //获取资源文件路径
pro.load(new FileReader(path)); //冲输入流中读取属性的键和元素
url=pro.getProperty("url"); //通过properties里边的键来获取值
user=pro.getProperty("user");
password=pro.getProperty("password");
driver= pro.getProperty("driver");
}catch(IOException e) {
e.printStackTrace();
}
}//获取连接对象
public static Connection getConnection() throwsSQLException {returnDriverManager.getConnection(url,user,password);
}//关闭资源
public static voidclose(Statement st,Connection conn){if(st!=null){try{
st.close();
}catch(SQLException e) {
e.printStackTrace();
}
}if(conn!=null){try{
conn.close();
}catch(SQLException e) {
e.printStackTrace();
}
}
}public static voidclose(ResultSet rs,Statement st,Connection conn){if(rs!=null){try{
rs.close();
}catch(SQLException e) {
e.printStackTrace();
}
}if(st!=null){try{
st.close();
}catch(SQLException e) {
e.printStackTrace();
}
}if (conn!=null){try{
conn.close();
}catch(SQLException e) {
e.printStackTrace();
}
}
}
}
properties文件
jdbc.properties
url=jdbc:mysql:///user
user=root
password=root
driver=com.mysql.jdbc.Driver