JPA Là Gì? Sự Khác Nhau Giữa JPA Với Hibernate - STACKJAVA
Có thể bạn quan tâm
JPA là gì? Sự khác nhau giữa JPA với Hibernate
1. JPA là gì?JPA (Java Persistence API) là 1 giao diện lập trình ứng dụng Java, nó mô tả cách quản lý các mối quan hệ dữ liệu trong ứng dụng sử dụng Java Platform.
JPA cung cấp một mô hình POJO persistence cho phép ánh xạ các table/các mối quan hệ giữa các table trong database sang các class/mối quan hệ giữa các object.
Ví dụ: table Users với các column (Id, name, age…) sẽ tương ứng với class Users.java với các field Id, name, age… từ đó mỗi khi truy vấn table hay các column ta sẽ truy vấn trực tiếp trên các class, các field của class mà không cần quan tâm tới việc đang dùng loại database nào, dữ liệu database ra sao…
Một số khái niệm trong JPA
- Entity: Entity là các đối tượng thể hiện tương ứng 1 table trong cơ sở dữ liệu. Khi lập trình, entity thường là các class POJO đơn giản, chỉ gồm các method getter, setter.
- EntityManager: EntityManager là một giao diện (interface) cung cấp các API cho việc tương tác với các Entity như Persist (lưu một đối tượng mới), merge (cập nhật một đối tượng), remove (xóa 1 đối tượng).
- EntityManagerFactory: EntityManagerFactory được dùng để tạo ra một thể hiện của EntityManager.
Kiến trúc JPA:
2. Hibernate là gì?Hibernate là 1 ORM (Object Relational Mapping) framework cho phép người lập trình thao tác với database một cách hoàn toàn tự nhiên thông qua các đối tượng. Lập trình viên hoàn toàn không cần quan tâm đến loại database sử dụng, SQL…
Hay nói cách khác, Hibernate chính là cài đặt của JPA (JPA là 1 tập các interface, còn Hibernate implements các interface ấy 1 cách chi tiết).
Kiến trúc Hibernate:
3. Một số ORM framework khác.Ngoài Hibernate ra có 1 số framework khác như Open JPA, Eclipselink cũng thực hiện implements JPA nhưng Hibernate được sử dụng phổ biến hơn cả.
4. Sự khác nhau giữa JPA với Hibernate.JPA là tập các giao diện (interfaces), qui chuẩn, định nghĩa. còn Hibernate thực hiện cài đặt (implements) các giao diện đó, định nghĩa đó.
JPA là gì? Sự khác nhau giữa JPA với Hibernate
References
https://docs.oracle.com/javaee/6/tutorial/doc/bnbpz.html
https://openjpa.apache.org/builds/1.2.3/apache-openjpa/docs/jpa_overview_arch.html
Từ khóa » Tìm Hiểu Về Jpa
-
Tổng Quan Về JPA (Java Persistence API) - GP Coder (Lập Trình Java)
-
Tổng Quan Về JPA - Techmaster
-
Giới Thiệu Về Spring JPA - Techmaster
-
Dùng Hibernate đã Lâu? Thế Bạn Có Biết JPA Là Gì? - Viblo
-
Cơ Bản Về JPA - Hướng Dẫn Java
-
Giới Thiệu Về Kiến Trúc JPA - HelpEx
-
Giới Thiệu Về Spring Data JPA - Tại Sao Cần Sử Dụng Nó?
-
Spring Data JPA Là Gì? Tại Sao Chúng Ta Cần Sử Dụng Nó? - Deft Blog
-
Tổng Quan Về JPA (Java Persistence API) - Chickgolden
-
Bài 5: Giới Thiệu Về Lập Trình JPA (Java Persistence API) Cơ Bản
-
Spring Data Jpa Là Gì
-
Jpa Là Gì
-
[SB11] Hướng Dẫn Spring Boot JPA + MySQL
-
Sử Dụng Spring Data Jpa Là Gì ? Giới Thiệu Về Spring Jpa