1. 程式人生 > >dljd_010_封裝JdbcUtil工具類

dljd_010_封裝JdbcUtil工具類

一、jdbc連線資料庫的封裝

package edu.aeon.utils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * [說明]:jdbc工具類
 * 封裝了jdbc裡面的重複步驟:資料庫的連線和資料庫資源的釋放
 * @author aeon
 * @version 1.1(該版本將連線資料庫的各種資訊(使用者名稱、密碼、驅動即url固化在該工具類中))
 * 下個版本將連線資料庫所需的資訊放入配置檔案
 
*/ public class AeonJdbcUtils { private static String username="root"; private static String password="root"; private static String driver="com.mysql.jdbc.Driver"; private static String url="jdbc:mysql://localhost:3306/db_test"; /** * 連線資料庫 * @return 資料庫連線物件 * @throws
ClassNotFoundException * @throws SQLException */ public static Connection getMySqlConnection() throws ClassNotFoundException, SQLException{ Class.forName(driver); return DriverManager.getConnection(url, username, password); } /** * 釋放資料庫資源 * @param
resultSet 結果集 * @param statement 執行sql語句的物件 * @param connection 資料庫連線物件 */ public static void closeDB(ResultSet resultSet,Statement statement,Connection connection){ if(null!=resultSet){ try { resultSet.close(); } catch (SQLException e) { System.out.println("釋放資料庫資源失敗!--->resultSet"); e.printStackTrace(); } } if(null!=statement){ try { statement.close(); } catch (SQLException e) { System.out.println("釋放資料庫資源失敗!--->statement"); e.printStackTrace(); } } if(null!=connection){ try { connection.close(); } catch (SQLException e) { System.out.println("釋放資料庫資源失敗!--->connection"); e.printStackTrace(); } } } }

測試類:  

package edu.aeon.utils;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
 * [說明]:測試封裝的工具類
 * @author aeon
 *
 */
public class Test {
    public static void main(String[] args) {
        Connection connection = null;
        Statement statement =null;
        ResultSet resultSet = null;
        try {
            connection = AeonJdbcUtils.getMySqlConnection();
            statement = connection.createStatement();
            String sql="select * from user";
            resultSet = statement.executeQuery(sql);
            System.out.println("使用者id\t使用者名稱\t使用者密碼");
            while(resultSet.next()){
                int userId=resultSet.getInt("userId");//根據表字段名獲取該行記錄上的欄位名所對應的欄位值
                String userName=resultSet.getString("userName");
                String userPw=resultSet.getString("userpw");//資料庫中的欄位不區分大小寫
                System.out.println(userId+"\t"+userName+"\t"+userPw);
            }
        } catch (ClassNotFoundException e) {
            System.out.println("載入驅動失敗!");
            e.printStackTrace();
        } catch (SQLException e) {
            System.out.println("連線資料庫失敗!");
            e.printStackTrace();
        }
        AeonJdbcUtils.closeDB(resultSet, statement, connection);
    }

}

測試結果:

  

  資料庫截圖:

  

三、該工具類的API


 

edu.aeon.utils

類 AeonJdbcUtils



  • public class AeonJdbcUtils
    extends Object
    [說明]:jdbc工具類 封裝了jdbc裡面的重複步驟:資料庫的連線和資料庫資源的釋放
    版本:
    1.1(該版本將連線資料庫的各種資訊(使用者名稱、密碼、驅動即url固化在該工具類中)) 下個版本將連線資料庫所需的資訊放入配置檔案
    作者:
    aeon