JPA là gì? Sự khác nhau giữa JPA với Hibernate – STACKJAVA

Cập nhật ngày 22/09/2022 bởi mychi

Bài viết JPA là gì? Sự khác nhau giữa JPA với Hibernate – STACKJAVA thuộc chủ đề về HỎi Đáp thời gian này đang được rất nhiều bạn quan tâm đúng không nào !! Hôm nay, Hãy cùng https://HuongLiYa.vn/ tìm hiểu JPA là gì? Sự khác nhau giữa JPA với Hibernate – STACKJAVA trong bài viết hôm nay nhé ! Các bạn đang xem bài viết : “JPA là gì? Sự khác nhau giữa JPA với Hibernate – STACKJAVA”

Đánh giá về JPA là gì? Sự khác nhau giữa JPA với Hibernate – STACKJAVA


Xem nhanh
JPA: Java Persistence Api, Specification (interface) định nghĩa các hàm thao tác với CSDL quan hệ, map các class với các bảng, các đối tượng với dữ liệu trong bảng.
Spring Data JPA: Một thư viện, gồm các class và hàm bổ sung thêm cho JPA để người dùng dễ thao tác. Đa phần là hàm trừu tượng, cần có JPA Provider như Hibernate
Hibernate: thư viện implement JPA, dùng mặc định trong spring data jpa, thực thi các công việc qua các hàm JPA.
Đăng ký học Online/Offline với hỗ trợ project:
https://JMaster.io/course/spring-boot-jpa-security
https://JMaster.io/course/spring-data-jpa

JPA là gì? Sự khác nhéu giữa JPA với Hibernate

Mọi Người Xem :   [Khối S gồm những ngành nào?] Các trường Đại học Khối S nổi tiếng

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 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ọi người cũng xem : dân đen là gì

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 dùng, SQL…

Mọi Người Xem :   Calories in Sunflower Seeds: Are They Healthy?

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 cụ thể).

Kiến trúc Hibernate:

✅ Mọi người cũng xem : thiên ngoại phi tiên là gì

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ả.

JPA là gì? Sự khác nhéu giữa JPA với Hibernate

✅ Mọi người cũng xem : vĩ tuyến là gì lớp 6

4. Sự khác nhéu 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 đó.

✅ Mọi người cũng xem : ghế đôn tiếng anh là gì

JPA là gì? Sự khác nhéu 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



Các câu hỏi về jpa là gì spring data jpa là gì


Nếu có bắt kỳ câu hỏi thắc mắt nào vê jpa là gì spring data jpa là gì hãy cho chúng mình biết nhé, mõi thắt mắt hay góp ý của các bạn sẽ giúp mình cải thiện hơn trong các bài sau nhé

Related Posts

About The Author

Add Comment