- Bài 1: Tổng quan ngôn ngữ Java
- Bài 2: Hướng dẫn cài đặt và cấu hình Java
- Bài 3: Hướng dẫn cài đặt và cấu hình Intellij IDEA trên Window
- Bài 4: Tạo Project và làm quen với Intelij IDEA
- Bài 5: Cú pháp và quy tắc cơ bản trong Java
- Bài 6: Các kiểu dữ liệu trong Java
- Bài 7: Các kiểu biến trong Java
- Bài 8: Toán tử trong Java
- Bài 9: Hệ thống Unicode trong Java
- Bài 10: Các kiểu vòng lặp
- Bài 11: Câu lệnh điều khiển rẽ nhánh
- Bài 12: Câu lệnh Break, Continue trong Java
- Bài 13: Lớp và đối tượng
- Bài 14: Tính chất của lập trình hướng đối tượng trong Java
- Bài 15: Abstract class và Interface trong Java
- Bài 16: Từ khóa super và this trong Java
- Bài 17: Từ khóa static và final trong Java
- Bài 18: Mảng (Array) trong Java
- Bài 19: Package trong Java
- Bài 21: String trong Java
- Bài 22: StringBuffer và StringBuilder
- Bài 23: Tổng quan về File và I/O
- Bài 24: Xử lý nhập xuất bằng Byte Stream và Character Stream
- Bài 25: Thao tác với tệp và thư mục trong Java
- Bài 26: Tổng quan về Collection trong Java
- Bài 27: Những Interface phổ biến trong Java Collection Framework
- Bài 28: Những Class được triển khai dựa trên Interface của Java Collection
- Bài 29: Khái niệm xử lý ngoại lệ trong Java
- Bài 30: Hướng dẫn xử lý ngoại lệ trong Java
- Bài 31: Đa luồng trong Java
- Bài 32: Thread synchronization trong Java
- Bài 33: Tổng quan về Java AWT
- Bài 34: Container trong Java AWT
- Bài 35: Component trong Java AWT
- Bài 36: Layout Manager trong Java AWT
- Bài 37: Xử lý sự kiện trong Java AWT
- Bài 38: Tổng quan về Java Swing
- Bài 39: Container trong Java Swing
- Bài 40: Component trong Java Swing
- Bài 41: Layout trong Java Swing
- Bài 42: Event trong Java Swing
- Bài 43: Menu trong Java Swing
- Bài 44: Kết nối cơ sở dữ liệu với thư viện JDBC trong Java
Bài 44: Kết nối cơ sở dữ liệu với thư viện JDBC trong Java - Lập trình Java cơ bản
Đăng bởi: Admin | Lượt xem: 7243 | Chuyên mục: Java
1. Java JDBC là gì?
Java JDBC là một java API được sử dụng để kết nối và thực hiện truy vấn với cơ sở dữ liệu. JDBC API sử dụng trình điều khiển jdbc để kết nối với cơ sở dữ liệu.
Trước JDBC, ODBC API là một database API được sử dụng để kết nối và thực hiện truy vấn với cơ sở dữ liệu. Nhưng, ODBC API sử dụng trình điều khiển ODBC được viết bằng ngôn ngữ C (tức là nền tảng phụ thuộc và không an toàn). Đó là lý do tại sao Java đã định nghĩa API của chính nó (JDBC API) sử dụng trình điều khiển JDBC (viết bằng ngôn ngữ Java).
API (Application programming interface - Giao diện lập trình ứng dụng) là một tài liệu có chứa mô tả về tất cả các tính năng của một sản phẩm hoặc phần mềm. Nó đại diện cho các lớp và các giao diện (interface) mà các chương trình phần mềm có thể làm theo để giao tiếp với nhau. Một API có thể được tạo cho các ứng dụng, thư viện, hệ điều hành, ...
2. Kết nối Java với SQL Server
Để kết nối Java với SQL Server bằng JDBC, giả sử bạn đã tạo bảng trong SQL Server, bạn cần làm theo 4 bước sau:
- Download Microsoft JDBC Driver tại đây, giải nén ra ta được:
- file sqljdbc41.jar trong thư mục Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\enu\jre7, file driver này được sử dụng với jdk/jre 7
- file sqljdbc42.jar trong thư mục Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\enu\jre8, file driver này được sử dụng với jdk/jre 8.
Một bước quan trọng không kém đó là copy file sqljdbc_auth.dll của thư mục Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\enu\auth\xx (với xx là version của window của bạn, 32 hoặc 64) vào thư mục C:\Windows\System32. - Add thư viện sqljdbc4x.jar vào project tương ứng với phiên bản JDK bạn đang sử dụng.
- Định nghĩa URL của database và username + password để truy cập vào database đó.
- Đăng ký JDBC driver cho SQL Server và thiết lập kết nối.
Ví dụ:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class ConnectSQLServerExample {
private static String DB_URL = "jdbc:sqlserver://localhost:1433;"
+ "databaseName=testdb;"
+ "integratedSecurity=true";
private static String USER_NAME = "sa";
private static String PASSWORD = "1234567890";
/**
* main
*
* @author viettuts.vn
* @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 viettuts.vn
* @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.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection(dbURL, userName, password);
System.out.println("connect successfully!");
} catch (Exception ex) {
System.out.println("connect failure!");
ex.printStackTrace();
}
return conn;
}
}
Trong ví dụ này, ta tạo bảng Student trong SQL Server như sau:

Kết quả thu được:
connect successfully!
1 Công Hanoi
2 Dung Vinhphuc
3 Ngôn Danang
4 Hạnh Hanoi
3. Kết nối Java với MySQL
Để 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.
Ví dụ:
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 viettuts.vn
* @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 viettuts.vn
* @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;
}
}
Trong ví dụ này, ta tạo bảng Student trong MySql như sau:

Kết quả thu được:
connect successfully!
1 Công Hanoi
2 Dung Vinhphuc
3 Ngôn Danang
4 Hạnh Hanoi
Như vậy, thông qua bài học này, mình đã giới thiệu đến các bạn cơ bản cách kết nối Java với SQL Server và MySQL. Cảm ơn các bạn đã đọc.

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!
- Bài 1: Tổng quan ngôn ngữ Java
- Bài 2: Hướng dẫn cài đặt và cấu hình Java
- Bài 3: Hướng dẫn cài đặt và cấu hình Intellij IDEA trên Window
- Bài 4: Tạo Project và làm quen với Intelij IDEA
- Bài 5: Cú pháp và quy tắc cơ bản trong Java
- Bài 6: Các kiểu dữ liệu trong Java
- Bài 7: Các kiểu biến trong Java
- Bài 8: Toán tử trong Java
- Bài 9: Hệ thống Unicode trong Java
- Bài 10: Các kiểu vòng lặp
- Bài 11: Câu lệnh điều khiển rẽ nhánh
- Bài 12: Câu lệnh Break, Continue trong Java
- Bài 13: Lớp và đối tượng
- Bài 14: Tính chất của lập trình hướng đối tượng trong Java
- Bài 15: Abstract class và Interface trong Java
- Bài 16: Từ khóa super và this trong Java
- Bài 17: Từ khóa static và final trong Java
- Bài 18: Mảng (Array) trong Java
- Bài 19: Package trong Java
- Bài 21: String trong Java
- Bài 22: StringBuffer và StringBuilder
- Bài 23: Tổng quan về File và I/O
- Bài 24: Xử lý nhập xuất bằng Byte Stream và Character Stream
- Bài 25: Thao tác với tệp và thư mục trong Java
- Bài 26: Tổng quan về Collection trong Java
- Bài 27: Những Interface phổ biến trong Java Collection Framework
- Bài 28: Những Class được triển khai dựa trên Interface của Java Collection
- Bài 29: Khái niệm xử lý ngoại lệ trong Java
- Bài 30: Hướng dẫn xử lý ngoại lệ trong Java
- Bài 31: Đa luồng trong Java
- Bài 32: Thread synchronization trong Java
- Bài 33: Tổng quan về Java AWT
- Bài 34: Container trong Java AWT
- Bài 35: Component trong Java AWT
- Bài 36: Layout Manager trong Java AWT
- Bài 37: Xử lý sự kiện trong Java AWT
- Bài 38: Tổng quan về Java Swing
- Bài 39: Container trong Java Swing
- Bài 40: Component trong Java Swing
- Bài 41: Layout trong Java Swing
- Bài 42: Event trong Java Swing
- Bài 43: Menu trong Java Swing
- Bài 44: Kết nối cơ sở dữ liệu với thư viện JDBC trong Java