Hướng dẫn cách tích hợp JavaSpring với Hibernate database

0
3397

Các bạn cũng đã biết Hibernate và Spring là các frameworks mã nguồn mở của Java khuôn khổ nhằm đơn giản hóa việc phát triển các ứng dụng từ đơn giản đến phức tạp, các ứng dụng Java/JEE, ứng dụng độc lập chạy trên một JVM duy nhất…Nhờ có Hibernate và Spring mà các nhà phát triển có thể xây dựng các khả năng mở rộng hiệu quả và đáng tin cậy hơn.

I. Sơ lược về kết hợp giữa Spring và Hibernate

Tuy rằng một phần mục đích của các khuôn khổ có chồng lên nhau, nhưng các phần còn lại có mục đích khác nhau.

Nếu như Hibernate framework để xử lý các bài toán về quản lý dữ liệu (chẳng hạn như: DBMS (Database Management Systems), API Java, persistence providers, JDBC (Java Database Connectivity)). Thì, Spring lại là khung nhiều tầng và không phải dành cho một khu vực kiến trúc ứng dụng. Nhờ API nhất quán của mình Spring thống nhất các giải pháp từ trước nên chúng dễ sử dụng hơn. Bạn có thể gọi một trong những khu vực này là persistence. Để cung cấp một lớp trừu tượng, hiệu quả hơn, bạn có thể tích hợp Spring với một persistence solution như Hibernate chẳng hạn.

II. Kết nối cơ sở dữ liệu (database)

1. Cách tạo một DB bằng MySQl

Chẳng hạn bạn tạo một cơ sở dữ liệu tên là studentdb với bảng là student và cấu trúc bảng như bên dưới:

Tạo một DB bằng MySQl
Tạo một Database bằng MySQl

2. Xây dựng Spring Project

2.1. Tạo một dynamic web project có tên KetNoiDB, sau đó thêm thư mục (add new folder) cho project như bên dưới:
Tạo một dynamic web project
Tạo một dynamic web project

Sau đó, bạn convert qua maven project rồi add maven vô thư viện của project:

Thao tác với Maven
Thao tác với Maven

Cấu hình file pom để dùng Spring, Hibernate và MySQl như sau:

2.2. Tạo lập file jdbc.properties để cấu hình sử dụng cơ sở dữ liệu

Vô src\main\webapp thiết lập một file mới với tên jdbc.properties như sau:

Đây chính là config giúp kết nối với cơ sở dữ liệu MySQl

Bạn tạo các file, thư mục như hình dưới đây:

Tạo file, thư mục
Tạo file, thư mục
2.3. Nội dung của các file thì như này:
2.3.1. com.nhungnth.model/student.java

2.3.2. com.nhungnth.dao/StudentDao.java

2.3.3. com.nhungnth.dao.impl/StudentDaoImpl.java

2.3.4. com.nhungnth.service/StudentService.java

2.3.5. com.nhungnth.service.impl/StudentServiceImpl.java

2.3.6. com.nhungnth.controller/StudentController.java

2.4. tạo các file view cho webapp
2.4.1. src/main/webapp/jsp/includes.jsp

2.4.2. src/main/webapp/jsp/student.jsp

Student Management

Students Data

2.5. Cấu hình của các file log4j.xml, hibernate.cfg.xml và web.xml:
2.5.1. src\main\resources\log4j.xml — ghi lại log
2.5.2. src\main\resources\hibernate.cfg.xml — cofig cho file hibernate
2.5.3. src\main\webapp\spring-servlet.xml — cấu hình file servlet

2.5.4. src\main\webapp\web.xml

Kết luận: Refesh lại project và start server để run project

Ưu điểm khi sử dụng Hibernate:

Năng suất: ít phải viết code java, không cần viết code sql

Hiệu suất: cache

Bảo trì dễ dàng.

Linh hoạt hơn, do generate code sql, bạn cũng có thể tùy chỉnh sql.

Nhược điểm:

Do phải generate code sql nên Hibernate không nhanh bằng jdbc.

Bên trên là toàn bộ quá trình thực hiện giúp bạn có thể tích hợp được hệ quản trị cơ sở dữ liệu của Hibernate với khả năng xử lý, hoạt động của Spring giúp bạn cải thiện đáng kể thời gian và năng suất làm việc.