Giới thiệu JDBC Driver
JDBC Driver là gì?
JDBC Driver là một thành phần phần mềm cho phép ứng dụng Java tương tác với cơ sở dữ liệu. Một trong những nhiệm vụ của JDBC Driver là chuyển đổi kiểu dữ liệu của Java thành kiểu dữ liệu của JDBC tương ứng trước khi gửi giá trị dữ liệu tới Database. Ví dụ như nó chuyển kiểu int trong Java thành kiểu INTEGER trong SQL. Trong chương này chúng ta cùng tìm hiểu qua về 4 kiểu JDBC Driver, đó là:
JDBC-ODBC bridge driver
Native-API driver
Network Protocol driver
Network Protocol driver
Giới thiệu JDBC-ODBC bridge driver
JDBC-ODBC bridge sử dụng ODBC driver để kết nối tới cơ sở dữ liệu. JDBC-ODBC bridge driver chuyển đổi các lời gọi phương thức JDBC thành các lời gọi hàm trong ODBC. Trong giai đoạn đầu khi Java mới xuất hiện thì kiểu driver này khá là hữu ích, bởi vì hầu hết cơ sở dữ liệu chỉ hỗ trợ truy cập ODBC. Nhưng hiện nay, kiểu driver này chỉ còn được sử dụng trong các thí nghiệm.
Nếu bạn đã từng sử dụng JDK 1.2, thì bạn sẽ thấy JDBC-ODBC đi kèm với phiên bản này.
Giới thiệu Native-API driver
Native-API driver sử dụng các thư viện Client-side của cơ sở dữ liệu. Driver này chuyển đổi các lời gọi phương thức JDBC thành các lời gọi Native C/C++ API. Nó không được viết bằng Java.
Sử dụng Native-API driver đem lại lợi thế là có hiệu suất nhanh hơn JDBC-ODBC bridge. Tuy nhiên, nếu bạn thay đổi Database thì bạn cũng phải thay đổi Native API, bởi vì với mỗi Database thì có Native-API riêng. Ví dụ cho kiểu driver này là Oracle Call Interface (OCI).
Giới thiệu Network Protocol driver
Network Protocol driver sử dụng một Middleware để chuyển đổi các lời gọi JDBC một cách trực tiếp hoặc gián tiếp thành Database Protocol. Driver này hoàn toàn được viết bằng Java.
Sử dụng kiểu driver này, bạn không cần thư viện Client-side, bởi vì ứng dụng Server có thể thực hiện nhiều tác vụ như thống kê, cân bằng tải, log, … Tuy nhiên, thiết bị Client của bạn cần hỗ trợ Network và việc duy trì cho kiểu driver này là khá đắt đỏ.
Giới thiệu Thin driver
Thin driver chuyển đổi trực tiếp các lời gọi JDBC thành Database Protocol. Kiểu driver này được viết hoàn toàn bằng Java. Nó thực sự linh động, bạn không cần cài đặt phần mềm đặc biệt trên Client hoặc Server. Ví dụ cho kiểu driver này là Connector/J driver của MySQL.
Thin Driver có hiệu suất cao hơn tất cả các kiểu driver khác. Tuy nhiên, có một hạn chế là kiểu driver này phụ thuộc vào Database.
Sự sử dụng của các kiểu driver
Nếu bạn đang truy cập một kiểu cơ sở dữ liệu, chẳng hạn như Oracle, Sybase, hoặc IBM thì bạn nên dùng Thin driver.
Nếu ứng dụng Java của bạn đang truy cập nhiều kiểu cơ sở dữ liệu cùng một thời điểm, thì bạn nên sử dụng Network Protocol driver.
Nếu như 2 kiểu trên không có sẵn cho cơ sở dữ liệu của bạn thì trong tình huống này, bạn nên sử dụng Native-API driver.
Kiểu driver còn lại chỉ nên được sử dụng cho mục đích phát triển và thí nghiệm.
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập doanh nghiệp với Java. Khóa học có giá chỉ 400K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.
Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp chị Thu, trợ lý anh Tuyền để hỗ trợ thanh toán qua mã QR ngân hàng Việt Nam, fb: https://www.facebook.com/Thule.59
Anh Tuyền, tác giả khóa học, là cựu sinh viên chương trình đào tạo kĩ sư tài năng của đại học Bách Khoa Hà Nội với hơn 5 năm kinh nghiệm đi làm thực tế doanh nghiệp và cũng là Founder website vietjack.com, web giáo dục phổ biến nhất Việt Nam hiện tại (năm 2024). Java cũng là ngôn ngữ lập trình dễ đi xin việc nhất hiện tại, với mức lương cao, hãy nâng cao kiến thức IT của bản thân mình vì một Việt Nam giàu mạnh.
Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com
Bài học Java phổ biến tại vietjack.com:
Demo một bài giảng trong khóa học online tại vietjackteam.