Để kết nối Java với MySQL bằng JDBC, giả sử bạn đã tạo bảng trong MySQL, bạn cần làm theo 4 bước sau:
- Tải file mysql-connector-java-x.y.zz.zip về máy tại https://dev.mysql.com/downloads/connector/j/, giải nén ra được file mysql-connector-java-x.y.zz-bin.jar.
- Add thư viện JDBC Driver mysql-connector-java-x.y.zz-bin.jar vào project.
- Gọi phương thức Class.forName("com.mysql.jdbc.Driver").
- Gọi phương thức DriverManager.getConnection() để kết nối đến cơ sở dữ liệu MySQL.
Chi tiết về việc kết nối ứng dụng Java với cơ sở dữ liệu MySQL bằng JDBC được thể hiển trong ví dụ dưới đây.
Nội dung chính
Ví dụ về kết nối Java với MySQL
Tạo bảng 'student' trong cơ sở dữ liệu có tên 'testdb' trong MySQL với câu lệnh như sau:
CREATE TABLE student ( id INT NOT NULL, name VARCHAR (32) NOT NULL, address VARCHAR (32) NOT NULL, PRIMARY KEY (id) );
Insert vài dòng dữ liệu cho bảng 'student'
INSERT INTO student(id, name, address) VALUES (1, "Công", "Hanoi"); INSERT INTO student(id, name, address) VALUES (2, "Dung", "Vinhphuc"); INSERT INTO student(id, name, address) VALUES (3, "Ngôn", "Danang"); INSERT INTO student(id, name, address) VALUES (4, "Hạnh", "Hanoi")
Sau khi thực thi các câu lệnh trên chúng ta có được dữ liệu như sau:
Tạo chương trình để kết nối và hiển thị dữ liệu của bảng 'student' ra màn hình như sau:
File: ConnectMysqlExample.java
package vn.kienthuclaptrinh.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class ConnectMysqlExample { private static String DB_URL = "jdbc:mysql://localhost:3306/testdb"; private static String USER_NAME = "root"; private static String PASSWORD = "1234567890"; /** * main * * @author kienthuclaptrinh.net * @param args */ public static void main(String args[]) { try { // connnect to database 'testdb' Connection conn = getConnection(DB_URL, USER_NAME, PASSWORD); // crate statement Statement stmt = conn.createStatement(); // get data from table 'student' ResultSet rs = stmt.executeQuery("select * from student"); // show data while (rs.next()) { System.out.println(rs.getInt(1) + " " + rs.getString(2) + " " + rs.getString(3)); } // close connection conn.close(); } catch (Exception ex) { ex.printStackTrace(); } } /** * create connection * * @author kienthuclaptrinh.net * @param dbURL: database's url * @param userName: username is used to login * @param password: password is used to login * @return connection */ public static Connection getConnection(String dbURL, String userName, String password) { Connection conn = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(dbURL, userName, password); System.out.println("connect successfully!"); } catch (Exception ex) { System.out.println("connect failure!"); ex.printStackTrace(); } return conn; } }
Kết quả:
connect successfully! 1 Công Hanoi 2 Dung Vinhphuc 3 Ngôn Danang 4 Hạnh Hanoi
Tham khảo bài học: Cài đặt MySQL