Để kết nối Java với MySQL, ta cần sử dụng JDBC (Java Database Connectivity). JDBC là một API (Application Programming Interface) cung cấp các đối tượng và phương thức để kết nối với các cơ sở dữ liệu quan hệ, bao gồm cả MySQL.
Thư viện JDBC: Link tải
Mô hình dữ liệu: Link tải
Bước 1: Tải và cài đặt JDBC driver cho MySQL. Có thể tải JDBC driver tại trang chủ của MySQL hoặc sử dụng các công cụ quản lý thư viện phổ biến như Maven hoặc Gradle.
Bước 2: Import các class của JDBC vào chương trình Java của bạn:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException;
Bước 3: Kết nối với cơ sở dữ liệu MySQL bằng cách tạo đối tượng Connection:
// Tên cơ sở dữ liệu String databaseName = "mydatabase"; // Tên người dùng String username = "myusername"; // Mật khẩu String password = "mypassword"; // Tạo URL cho kết nối đến cơ sở dữ liệu MySQL String url = "jdbc:mysql://localhost/" + databaseName; // Tạo đối tượng Connection Connection connection = DriverManager.getConnection(url, username, password);
Bước 4: Sử dụng các đối tượng của JDBC để thao tác với cơ sở dữ liệu MySQL, bao gồm PreparedStatement, Statement và ResultSet.
// Tạo PreparedStatement để thực thi câu truy vấn SELECT PreparedStatement statement = connection.prepareStatement("SELECT * FROM mytable"); // Thực thi câu truy vấn và lấy ResultSet ResultSet resultSet = statement.executeQuery(); // Duyệt qua các bản ghi của ResultSet while (resultSet.next()) { String column1 = resultSet.getString("column1"); int column2 = resultSet.getInt("column2"); // ... } // Đóng kết nối resultSet.close(); statement.close(); connection.close();
Lưu ý: Khi sử dụng JDBC để kết nối và thao tác với cơ sở dữ liệu, ta cần xử lý các exception như SQLException để đảm bảo ứng dụng Java của bạn chạy một cách ổn định và đáng tin cậy.
Ví dụ:
try { Class.forName("com.mysql.cj.jdbc.Driver"); return DriverManager.getConnection(Constants.DB_URL, Constants.USER, Constants.PASS); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return null;