jdbc 連接mysql

import com.mysql.cj.jdbc.Driver;

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

/*
僅供參考,數據庫已發生變動
 */
public class JDBC {

    public static void jdbcTest(){
        // 註冊 mysql 驅動
        // mysql服務端地址,注意:數據庫後面需要添加  ?serverTimezone=UTC
        // 因爲使用Mysql Connector/J 8.x時發生時區的錯誤
        String url = "jdbc:mysql://localhost:3306/DATABASE_NAME?serverTimezone=UTC";
        // 訪問mysql服務端的用戶名
        String user = "root";
        // 訪問mysql服務端的密碼
        String password = "PATHWORD_HERE";
        Connection connection = null;
        Statement statement = null;
        ResultSet resultset = null;

        try {
            DriverManager.registerDriver(new Driver());

            // connection 代表跟mysql服務端的一個連接
            connection = DriverManager.getConnection(url,user,password);
            if (connection != null){
                System.out.println("數據庫連接成功!");
            }
            //通過connection 可以獲取statement對象,statement可以執行sql語句
            // statement對象用於傳遞sql語句給數據庫管理系統執行
            statement = connection.createStatement();
            // 書寫 sql 語句
            String sql = "select * from user_address";
            // 通過statement執行查詢語句返回結果集,executeQuery方法用於執行select查詢語句,
            // 並返回單個結果集,保存在ResultSet對象中
            resultset = statement.executeQuery(sql);
            System.out.println("開始執行查詢,查詢結果如下:\n");
            // 調用next()方法,resultset.next()一開始指向結果集中第一行元素,之後每執行一次就往後跳動一次,爲空時結束循環
            System.out.println("Address_id\tCustomer_id\tAddress\tDefault_true");
            System.out.println("------------------------------------------------------");
            while (resultset.next()){
                String Address_id = resultset.getString("Address_id");
                String Customer_id = resultset.getString("Customer_id");
                String Address = resultset.getString("Address");
                String Default_true = resultset.getString("Default_true");

                System.out.println(Address_id+"\t\t"+Customer_id+"\t\t"+Address+"\t\t"+Default_true);
                System.out.println("------------------------------------------------------");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally{

        System.out.println("\n查詢結束!");

        // 釋放ResultSet資源
        try{
            if (resultset != null){
                resultset.close();
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        // 釋放Statement資源
        try{
            if (statement != null){
                statement.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        // 斷開 connetion 連接
        try{
            if (connection != null){
                connection.close(); // 關閉數據庫
                System.out.println("數據庫已關閉!");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        }
    }

    public static void main(String[] args) {
        jdbcTest();
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章