JDBC工具類相關
阿新 • • 發佈:2017-09-09
lex ati tac dstat ram stmt 提取 ini .get
第一種(單純提取註冊驅動和獲取連接):
把註冊驅動,獲取連接一起寫入工具類靜態方法裏,並釋放資源
1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.PreparedStatement; 4 import java.sql.ResultSet; 5 import java.sql.SQLException; 6 7 /** 8 * 提供獲取連接和釋放資源的方法 9 * 10 * @author Administrator 11 * 12 */ 13 publicclass JDBCUtils_V1 { 14 /** 15 * 獲取連接 16 * 17 * @return 18 */ 19 public static Connection getConnection() { 20 Connection conn = null; 21 try { 22 Class.forName("com.mysql.jdbc.Driver"); 23 conn = DriverManager.getConnection("jdbc:mysql://192.168.1.32:3306/web09", "root", "qweasd");24 } catch (Exception e) { 25 e.printStackTrace(); 26 } 27 return conn; 28 } 29 /** 30 * 釋放資源 31 * @param conn 32 * @param pstmt 33 * @param rs 34 */ 35 public static void release(Connection conn, PreparedStatement pstmt, ResultSet rs) {36 if (rs != null) { 37 try { 38 rs.close(); 39 } catch (SQLException e) { 40 e.printStackTrace(); 41 } 42 } 43 if (pstmt != null) { 44 try { 45 pstmt.close(); 46 } catch (SQLException e) { 47 e.printStackTrace(); 48 } 49 } 50 if (conn != null) { 51 try { 52 conn.close(); 53 } catch (SQLException e) { 54 e.printStackTrace(); 55 } 56 } 57 } 58 }
第二種(調用properties文件)
把調用過程寫入靜態代碼塊中
1 private static String driver; 2 private static String url; 3 private static String username; 4 private static String password; 5 static { 6 ResourceBundle rb = ResourceBundle.getBundle("a"); 7 driver = rb.getString(driver); 8 url = rb.getString(url); 9 username = rb.getString(username); 10 password = rb.getString(password); 11 }
第三種(通過類加載器):
1 static { 2 try { 3 // 1.通過當前類獲取類加載器 4 ClassLoader cl = JDBCUtils_V3.class.getClassLoader(); 5 // 2.通過類加載器獲取輸入流 6 InputStream is = cl.getResourceAsStream("a.properties"); 7 // 3.創建一個properties對象 8 Properties pp = new Properties(); 9 // 4.加載輸入流 10 pp.load(is); 11 // 5.獲取相關參數 12 driver = pp.getProperty(driver); 13 url = pp.getProperty(url); 14 username = pp.getProperty(username); 15 password = pp.getProperty(password); 16 } catch (IOException e) { 17 e.printStackTrace(); 18 } 19 }
JDBC工具類相關