在前面的文章中,我曾簡述過JDBC編程步驟:1.加載數據庫驅動。2.獲得數據庫連接。3.創建SQL語句。4.執行查詢。5.遍歷結果集。6.關閉數據庫連接。其實要想實現連接數據庫可以有不同的方法。下面我將給大家具體介紹:

// 第一種方法
    public Connection getConnection() {
        Connection conn = null;
        try {
            // Class.forName加載驅動
            Class.forName("com.mysql.jdbc.Driver");
            // DriverManager獲得連接
            conn = DriverManager
                    .getConnection("jdbc:mysql://localhost:3306/jdbc_db",
                            "root", "1234");
            return conn;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

這是最簡單而且清晰明了的方法了,需要說明的是在建立連接前我們應在程序的開始引入相關的Java包 java.sql.Connection;java.sql.DriverManager;我們編寫的getConnection方法為無參方法,在方法里面直接用字符串"com.mysql.jdbc.Driver"和"jdbc:mysql://localhost:3306/jdbc_db", "root", "8185311"作為forName()和getConnection()方法的實參。

// 第二種方法
    public Connection getConnection(String driver, String url, String user,
            String password) {
        Connection conn = null;
        try {
            // Class.forName加載驅動
            Class.forName(driver);
            // DriverManager獲得連接
            conn = DriverManager.getConnection(url, user, password);
            return conn;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

此方法和上面的很相似,只不過該方法引入了形參:driver,url,user,password.在方法的定義中,直接將實參的值傳遞到forName()和getConnection()方法里面,使調用數據庫的方法靈活性提高。

// 第三種方法
    public Connection openConnection() {
        String driver = "";
        String url = "";
        String user = "";
        String password = "";
        Properties prop = new Properties();
        Connection conn = null;
        try {
            // 加載屬性文件
            prop.load(this.getClass().getClassLoader().getResourceAsStream(
                    "DBConfig.properties"));
            driver = prop.getProperty("driver");
            url = prop.getProperty("url");
            user = prop.getProperty("user");
            password = prop.getProperty("password");
            // Class.forName加載驅動
            Class.forName(driver);
            // DriverManager獲得連接
            conn = DriverManager.getConnection(url,
                    user, password);
            return conn;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

第三種方法是很重要的方法,也是我們應該首先的方法,它涉及到了配置文件的使用。在建立連接前我們只需把連接數據庫的相關信息放到配置文件中,如圖:

該配置文件放到和該項目相通的目錄下面,如圖:

I$HR(O3WZV~]{L1XKZE0UXO

這樣使key和value相對應,在需要建立數據庫連接的時候,程序會從配置文件中去搜索相關信息來建立連接。不但使程序的靈活性提高,而且最終要的是當我們需要改變要連接的數據庫時,不用修改相關的程序代碼,只需更改配置文件就能滿足功能的需求。這樣一來使代碼的復用性大大提高,不僅減少了代碼量,而且使程序的可讀性提高。

跟大家介紹了上述三種連接數據庫的方法,提倡大家平時使用第三種,當我們涉及到大的項目時,它的好處體現的更加明顯。