Kết nối JDBC với MySQL



Chương này, chúng ta cùng tìm hiểu các bước đơn giản để thiết lập một kết nối JDBC với MySQL Database. Trong loạt bài hướng dẫn về JDBC này, mình sử dụng MySQL, do đó, trong các chương trình ví dụ trong bài, mình sử dụng root là username và 123456 là mật khẩu.

Để kết nối ứng dụng Java với MySQL Database, bạn cần tải mysqlconnector.jar file. Sau đó, bạn theo một trong hai cách:

1. Dán mysqlconnector.jar file trong JRE/lib/ext folder.

2. Thiết lập classpath:

  • Thiết lập classpath tạm thời: đầu tiên bạn tìm mysqlconnector.jar file, sau đó mở command prompt và viết: C:>set classpath=c:\folder\mysql-connector-java-5.0.8-bin.jar;.;

  • Thiết lập classpath vĩnh viễn: Vào MyComputer properties -> advanced tab -> environment variables -> tạo tab mới user variable -> viết giá trị path trong tên biến -> dẫn đến thư mục bin của cài đăt java -> ok -> ok -> ok.

  • Xây dựng ClassPath của ngôn ngữ Java

    Trong variable name, bạn viết classpath và trong variable value, bạn dán path là C:\folder\mysql-connector-java-5.0.8-bin.jar;.;

Sau đó, để kết nối ứng dụng Java với MySQL Database, bạn thực hiện theo 5 bước như dưới đây. Chúng ta cần biết các thông tin sau về MySQL Database:

1. Lớp Driver cho MySQL Database là com.mysql.jdbc.Driver.

2. Địa chỉ kết nối cho MySQL Database là jdbc:mysql://localhost:3306/sinhvien. Trong đó:

  • jdbc là API

  • mysql là cơ sở dữ liệu

  • localhost là tên server mà MySQL đang chạy (chúng ta cũng có thể sử dụng địa chỉ IP tại đây)

  • 3306 là số hiệu cổng

  • sinhvien là tên của cơ sở dữ liệu (tùy theo cơ sở dữ liệu mà bạn muốn sử dụng)

3. Username mặc định cho MySQL Database là root.

4. Password được cung cấp bởi người dùng tại thời điểm cài đặt MySQL Database (với mình là 123456).

Bây giờ, chúng ta sẽ tạo một bảng trong MySQL Database.

// Tao co so du lieu co ten la sinhvien
create database sinhvien; 
// Chon co so du lieu de lam viec
use sinhvien; 
// Tao bang hocphi trong co so du lieu tren
create table hocphi(mssv number(10),ho varchar2(50), ten varchar2(30),hocphi number(3));

Ví dụ để kết nối ứng dụng Java với MySQL Database

Trong ví dụ này, mình sử dụng username mặc định là root và password của mình là 123456. Chương trình đơn giản này được sử dụng để lấy tất cả bản ghi có trong bảng hocphi. Mình đã liệt kê và comment chi tiết về các bước trong khi kết nối ứng dụng Java với MySQL Database để bạn tiện theo dõi.

package com.vietjack.jdbc;

import java.sql.*;  
class ViDuJDBC{  
public static void main(String args[]){  
try{  
// Buoc 1: Tai lop Driver 
Class.forName("com.mysql.jdbc.Driver");  

// Buoc 2: Tao doi tuong Connection    
Connection con=DriverManager.getConnection(  
"jdbc:mysql://localhost:3306/sinhvien","root","123456");  
  
// sihvien la ten co so du lieu, root la username va mat khau la 123456 

// Buoc 3: Tao doi tuong Statement    
Statement stmt=con.createStatement();  
// Buoc 4: Thuc thi truy van    
ResultSet rs=stmt.executeQuery("SELECT * FROM hocphi");  
  
while(rs.next())  
System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getString(3)+ rs.getInt(4));
 
// Buoc 5: Dong doi tuong Connection    
con.close();  
  
}catch(Exception e){ System.out.println(e);}  
  
}  
}  

Mọi người cho thể tham gia khóa học thứ 5 của vietjackteam vào cuối tháng 11/2017 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Khóa học cũng đưa 200 câu hỏi phỏng vấn java trên https://www.javatpoint.com/corejava-interview-questions vào nội dung để giúp các bạn dễ dàng vượt qua kì phỏng vấn

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Thông tin khóa học tại Khóa học Java Online trên Udemy

Loạt bài hướng dẫn học Java JDBC cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint.com



Demo một bài giảng trong khóa học online tại vietjackteam.