配置文件,创建一个文件名,文件后缀名需要为"properities",
再创一个java class的文件当作工具类
import java.io.FileReader; import java.io.IOException; import java.net.URL; import java.sql.*; import java.util.Properties; public class JDBCUtils { private static String url; private static String user; private static String password; private static String driver; //文件的读取,只需读取一次即可拿到这些值,使用静态代码块 static{ //读取文件,获取值 //1.创建Properties集合类 Properties pro=new Properties(); //获取src路径下的文件的方式--->ClassLoader类加载器 ClassLoader classLoader=JDBCUtils.class.getClassLoader(); URL res=classLoader.getResource("jdbc.properties"); String path=res.getPath(); System.out.println(path); //2.加载文件 try { pro.load(new FileReader(path)); } catch (IOException e) { e.printStackTrace(); } try { pro.load(new FileReader("src/jdbc.properties")); //3.获取数据,赋值 url=pro.getProperty("url"); user=pro.getProperty("user"); password=pro.getProperty("password"); driver=pro.getProperty("driver"); //4.注册驱动 Class.forName(driver); } catch (IOException | ClassNotFoundException e) { e.printStackTrace(); } } //获取连接对象 public static Connection getConnection() throws SQLException { return DriverManager.getConnection("jdbc:mysql:///hsp_db02","root","011012"); } public static void close(ResultSet rs, Statement stm, Connection con){ //资源释放 if(stm !=null){ try { stm.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } }if(con !=null){ try { con.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } }if(rs !=null){ try { rs.close(); } catch (SQLException throwables) { throwables.printStackTrace(); } } } }
展示 效果
import java.sql.*; import java.util.ArrayList; import java.util.List; import java.sql.*; import java.util.ArrayList; import java.util.List; public class JDBC09 { public static void main(String[] args) throws SQLException { Listlist = new JDBC08().finfAll(); System.out.println(list); } public List finfAll2() throws SQLException { Connection con = null; Statement s = null; ResultSet rs = null; List list = null; try { // //1.注册驱动 // Class.forName("com.mysql.cj.jdbc.Driver"); // //2.获取链接 // con = DriverManager.getConnection("jdbc:mysql:///hsp_db02", "root", "011012"); con = JDBCUtils.getConnection(); //3.定义sql语句 String sql = "select * from emp"; //4.获取执行sql对象 s = con.createStatement(); //5.执行sql语句 rs = s.executeQuery(sql); //6.遍历结果,封装对象,装在集合 Emp emp = null; list = new ArrayList (); while (rs.next()) { //获取数据 int id = rs.getInt("id"); String name = rs.getString("name"); int job_id = rs.getInt("job_id"); double salary = rs.getDouble("salary"); //创建emp对象,并赋值 emp = new Emp(); emp.setId(id); emp.setJob_id(job_id); emp.setName(name); emp.setSalary(salary); //装在集合 list.add(emp); } } finally { // if (con != null) { // con.close(); // } // } // if (s != null) { // s.close(); // } // if (rs != null) { // rs.close(); // } // return null; // } JDBCUtils.close(rs, s, con); return null; } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)