Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Kết nối sql server với java (Connect to Microsoft SQL Server via JDBC) sẽ hướng dẫn các bạn làm thế nào để có được trình điều khiển JDBC (JDBC Driver) và viết mã (code) cho việc kết nối đến cơ sở dữ liệu được cài đặt trên Microsoft SQL Server từ ứng dụng Java.

Nội dung bài học bao gồm tải JDBC Driver, chuỗi kết nối cho Microsoft SQL Server (sql server jdbc connection string), thiết lập kết nối (establish connection) và chương trình mẫu.

Kết nối sql server với java – Download Microsoft JDBC driver

Tải JDBC Driver và thêm sqljdbc42.jar vào Java project sử dụng NetBeans theo các bước sau

Chuột phải Libraries -> Chọn Add JAR/Folder…

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Chỉ định thư mục chứa JDBC Driver và chọn tập tin sqljdbc42.jar -> chọn Open

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Kết nối sql server với java – SQL Server JDBC connection string

Là chuỗi được sử dụng để kết nối đến SQL Server. Mỗi một hệ quản trị cơ sở dữ liệu sẽ có một chuỗi kết nối khác nhau. Sau đây là chuỗi kết nối JDBC dành cho Microsoft SQL Server

jdbc:sqlserver://_[serverName[\instanceName][:portNumber]][;property=value[;property=value]]_

Trong đó

  • serverName là tên máy chủ hoặc địa chỉ IP của máy đang cài đặt Microsoft SQL Server
  • instanceName tên của một thể hiện để kết nối đến serverName. Nếu tham số này không được chỉ định thì default instance sẽ được sử dụng

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

  • portNumber là cỗng ứng dụng của SQL Server, mặc định là 1433

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

  • property=value chỉ định tên cơ sở dữ liệu, tên và mật khẩu đăng nhập vào SQL Server

databaseName=EMPDB; user=sa; password=sa

Kết nối sql server với java – Thiết lập kết nối (establish connection)

Để tạo một kết nối, gọi phương thức getConnection() của lớp DriverManager. Sau đây là đoạn code được sử dụng để kết nối đến localhost sử dụng user là sa, mật khẩu là sa và kết nối vào cơ sở dữ liệu tên EMPDB

Bài viết này mình sẽ hướng dẫn các bạn cách kết nối tới hệ cơ sở dữ liệu mẫu là MySQL qua đó các bạn cũng có thể kết nối tới DB2, hoặc MSSQL 2000(SP4)

Có gì sai sót mong các bạn góp ý để bài viết được hoàn thiện hơn

Thứ tự thực hiện

1. Tạo Library của hệ CSDL mà bạn muốn kết nối tới từ NetBeans.

2. Tạo project để test connect, Add Libray tương ứng với hệ CSDL mà bạn muốn kết nối tới.

3. Tạo File test.java để thử connect

Bước 1 Tạo Library của hệ CSDL mà bạn muốn kết nối tới từ NetBeans.

Đầu tiên phải có JDBC của hệ CSDL mà bạn dùng

vdu : nếu bạn sử dụng MySQL thì bạn bạn vào đây để tải JDBC driver cho Mysql http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.6.tar.gz/from/ftp://mirror-fpt-telecom.fpt.net/mirror/mysql/

Sau khi tải về các bạn giải nến ra và ghi nhớ đường dẫn tới file này

mysql-connector-java-5.1.6-bin.jar

Trong NetBean bạn chọn Tools > Libaries > Chọn New Library > Đặt tên cho nó (chọn library type là Class Libaries)

Sau đó click vào Add jar/Folder – link tới thư mục mà bạn đã giải nến JDBC driver của mysql ra và chọn mysql-connector-java-5.1.6-bin.jar

Okie, thế là bạn đã tạo xong Library cho CSDL của mysql

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Bước 2 Add Libray tương ứng với hệ CSDL mà bạn muốn kết nối tới.

Ở đây mình tạo project Test (Java Application). Nhấp chuột phải vào project mới tạo và chọn Properties. Phía bên trái của của Sổ vừa hiện lên bạn chọn mục Libaries, chọn Add Library, bạn chọn Library vừa add vào ở bước 1

Hướng dẫn kết nối cơ sở dữ liệu trong netbean

Bước 3 Tạo File test.java để thử connect

bạn tạo file test.java với nội dung như sau:

import java.sql.; public class Test{ public static void main (String[] args){ Connection conn = null; try{ String userName = "root"; String password = ""; String url = "jdbc:mysql://127.0.0.1:3306/test"; // String url = "jdbc:mysql://localhost:3306/test"; Class.forName("org.gjt.mm.mysql.Driver); conn = DriverManager.getConnection(url,userName,password); System.out.println("Da ket noi csdl"); } catch (Exception e){ System.err.println ("KHONG KET NOI DUOC"); e.printStackTrace(); } finally{ if (conn != null){ try{ conn.close (); System.out.println ("Dong ket noi"); } catch (Exception e) { / bo qua loi luc dong csdl */ } } } } }

Giải thích:

Dòng có màu ở trên

Tùy theo hệ cơ sở dữ liệu mà bạn thay thế cho phù hợp

vdu ở trên kết nối vói Mysql nên

String url = "jdbc:mysql://127.0.0.1:3306/test"; //test là tên db, 3306 là port default Class.forName("org.gjt.mm.mysql.Driver");

với microsoft sql 200 sp4(chú ý là sp4) thì bạn sửa lại như sau:

String userName = "sa"; //dien username trong sql serve String password = "pass"; //dien pass String url = "jdbc:sqlserver://localhost:1433;databaseName=Northwind"; //tên db, port default của sql200 là 1433 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Với DB2 bạn sửa lại như sau:

String url = "jdbc:db2://localhost:50000/SAMPLE"; // chú ý port của nó là 5000 (cái này bạn phải thiết lập cho nó) , SAMPLE là tên db mặc định Class.forName("com.ibm.db2.jcc.DB2Driver"); Ví Dụ trên mình thử kết nối tới MySQL, các bạn làm hoàn toàn tương tự với những hệ csdl khác(MSSQL,DB2….)