Tôi hiểu rằng JPA 2 là một đặc điểm kỹ thuật và Hibernate là một công cụ cho ORM. Ngoài ra, tôi hiểu rằng Hibernate có nhiều tính năng hơn JPA 2. Nhưng từ quan điểm thực tế, sự khác biệt thực sự là gì?
Tôi có kinh nghiệm sử dụng iBatis và hiện tại tôi đang cố gắng học Hibernate hoặc JPA2. Tôi đã chọn cuốn sách Pro JPA2 và nó liên tục đề cập đến "nhà cung cấp JPA". Ví dụ:
Nếu bạn nghĩ rằng một tính năng nên được tiêu chuẩn hóa, bạn nên lên tiếng và yêu cầu nó từ nhà cung cấp JPA của bạn
Điều này làm tôi bối rối vì vậy tôi có một vài câu hỏi:
- Chỉ sử dụng JPA2 tôi có thể tìm nạp dữ liệu từ DB bằng cách chú thích POJO của tôi
- JPA2 có được sử dụng với "Nhà cung cấp JPA" hay không, ví dụ TopLink hoặc Hibernate? Nếu vậy, lợi ích của việc sử dụng JPA2 + Hibernate so với JPA2 là gì, hoặc so với Hibernate một mình?
- Bạn có thể giới thiệu một cuốn sách JPA2 thực tế tốt. "Pro JPA2" có vẻ giống như một cuốn kinh thánh và tài liệu tham khảo về JPA2 (Nó không đi vào Truy vấn cho đến nửa sau của cuốn sách). Có một cuốn sách có cách tiếp cận vấn đề / giải pháp cho JPA2 không?