工具类 解决硬编码问题

package JdbcUtils; import java.io.FileReader; import java.io.IOException; import java.net.URL; import java.sql.*; import java.util.Properties; /* *jdbc 工具类 */
public class JdbcUtils { private static String url; private static String user; private static String password; private static String driver; //文件的读取,只读取一次拿到全部值 使用静态代码块
    static{ try { //读取资源文件 获取值 建立 Prpperties集合类
           Properties pro=new Properties(); //得到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() throws SQLException { return DriverManager.getConnection(url,user,password); } //关闭资源
    public static void close(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 void close(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
相关文章
相关标签/搜索