Thông thường, các ứng dụng (app desktop) sử dụng Java Swing để hiển thị được dữ liệu từ database ra cho người dùng, chúng ta phải thực hiện các kết nối vào database; tiếp đó sử dụng các câu lệnh truy vấn như select, insert, update, join các bảng để lấy thông tin; Cuối cùng, nhận dữ liệu trả về từ database để xử lý hiển thị. Tất cả những cách thức xử lý dữ liệu phức tạp và rườm ra đó đã được cải tiến bởi Hibernate FrameWork.
Hibernate là gì?
Hibernate là một FrameWork thuần Java được phát triển và ra đời vào năm 2001 bởi Gavin King. Đây là một giải pháp mã nguồn mở gọn nhẹ, giúp giảm thiểu sự phức tạp trong việc phát triển ứng dụng java tương tác với các loại cơ sở dữ liệu.
Hibernate Framework là một giải pháp ORM (Object Relational Mapping), đây là một kỹ thuật để ánh xạ đối tượng vào các bảng dữ liệu được lưu trữ trong cơ sở dữ liệu. Có thể hiểu đơn giản, mỗi bảng trong database sẽ được ánh xạ hay mapping với 1 object class.
Hibernate vẫn sử dụng các JDBC API để tương tác với database, nó được sử dụng ở lớp Persistence. Đây là các class Java có objects hoặc các thể hiện sẽ được lưu trữ trong các bảng cơ sở dữ liệu.
Hibernate có những ưu điểm, lợi ích gì?
1. Nâng cao hiệu suất câu lệnh truy vấn: Do có cơ chế sử dụng Hibernate Cache giúp lưu lại kết quả câu truy vấn mà không phải thực hiện thao tác truy xuất xuống database nhiều lần.
2. Sử dụng HQL Query truy vẫn độc lập với cơ sở dữ liệu: HQL (Hibernate Query Language) là hướng đối tượng trong SQL. Trước đây trong các dự án nếu có sự thay đổi hay nâng cấp cơ sở dữ liệu, chúng ta cần phải thay đổi truy vấn SQL tương ứng với loại csdl mới dẫn đến sự cố bảo trì. Nhưng khi sử dụng HQL thì ta không phụ thuộc vào database đang sử dụng vì câu lệnh HQL nó tương thích với các loại database khác nhau như SQL Server, mysql , postgres….
3. Hỗ trợ câu lệnh DDL (Define Data Language): Hiberate hỗ trợ sử dụng các câu lệnh định nghĩa cấu trúc, giúp chúng ta có thể tự động tạo table, columns, kiểu dữ liệu thông qua các annotaion mà ta thêm trong Entity mà không cần phải vào database thao tác bằng tay.
4. Thiệt đặt các khóa chính – Primary key: Khi tạo table để đánh dấu một trường là khoá chính thì ta phải làm việc này bằng tay hoặc viết câu lệnh SQL. Nhưng với Hibernate có thể làm việc này một cách tự động thông qua các Annotation.
Đưa Hibernate vào ứng dụng Java Swing:
Để sử dụng hibernate trong JavaSwing trước tiên chúng ta cần import các thư viện Hibernate FrameWork vào project Java: ()
Trên đây là phần giới thiệu và làm quen về Hibernate, các ví dụ cụ thể sẽ có trong phần tiếp theo để các bạn sinh viên tham khảo và tìm hiểu sâu hơn về Hibernate.