【JDBC】实现对JDBC 连接的简单封装
生活随笔
收集整理的這篇文章主要介紹了
【JDBC】实现对JDBC 连接的简单封装
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package util;import java.sql.Connection;
import java.sql.DriverManager;/**** 實現對JDBC 的封裝* @author mqy**/
public class JdbcUtil {private JdbcUtil() {}private static String driverClassName = "com,mysql.jdbc.Driver";private static String url = "jdbc:mysql:///jdbcdemo";private static String user = "root";private static String password = "root";//使用靜態代碼塊實現 jdbcUtil的字節碼被加載錦jvm中 并且只執行一次。避免每次使用都注冊 static{try {Class.forName(DriverClassName);} catch (Exception e) {e.printStackTrace();}}//提供外界訪問 public static Connection getConn(){try {return DriverManager.getConnection(url, user, password);} catch (Exception e) {e.printStackTrace();}return null;}
}
?關閉資源
//關閉資源 查詢方法關閉資源 JdbcUtil.close(conn,st,rs)//增刪改 關閉資源JdbcUtil.close(conn,st,null)public static void close(Connection conn,Statement st,ResultSet rs){try {if (rs != null) {rs.close();}} catch (Exception e) {e.printStackTrace();}finally {try {if (st != null) {st.close();} } catch (Exception e2) {e2.printStackTrace();}finally {try {if (conn != null) {conn.close();}} catch (Exception e) {e.printStackTrace();}}}} }?注意:??上面的簡單封裝,雖然解決了在使用過程中書寫重復代碼的問題,不過還存在一個問題,那就是將數據庫的基本信息寫死在了源代碼中,這樣不利于維護,如果要修改每次得修改源代碼。
解決方案:把數據庫的連接信息抽取到一個配置文件(properties/xml)中存儲。觀察發現存儲的信息,是以key-value的形式存在,所以采用properties文件存儲。
在scr路徑下新建一個bd.properties 文件并存儲信息:
driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql:///jdbcdemo user=root password=root;加載properties文件如下:
package util; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Properties; import com.mysql.jdbc.Statement;/**** 實現對JDBC 的封裝* @author mqy**/ public class JdbcUtil {private static Properties properties = new Properties();//使用靜態代碼塊實現 jdbcUtil的字節碼被加載錦jvm中 并且只執行一次。避免每次使用都注冊static{try {InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties");properties.load(inputStream);Class.forName(properties.getProperty("driverClassName"));} catch (Exception e) {e.printStackTrace();}}private JdbcUtil() {}//提供外界訪問 返回數據庫的連接對象public static Connection getConn(){try {return DriverManager.getConnection(properties.getProperty("url"), properties.getProperty("user"), properties.getProperty("password"));} catch (Exception e) {e.printStackTrace();}return null;} //關閉資源 查詢方法關閉資源 JdbcUtil.close(conn,st,rs)//增刪改 關閉資源JdbcUtil.close(conn,st,null)public static void close(Connection conn,Statement st,ResultSet rs){try {if (rs != null) {rs.close();}} catch (Exception e) {e.printStackTrace();}finally {try {if (st != null) {st.close();} } catch (Exception e2) {e2.printStackTrace();}finally {try {if (conn != null) {conn.close();}} catch (Exception e) {e.printStackTrace();}}}} }?
轉載于:https://www.cnblogs.com/741162830qq/p/6727538.html
總結
以上是生活随笔為你收集整理的【JDBC】实现对JDBC 连接的简单封装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: minicap_工具使用
- 下一篇: WBS分析