Spring Data JPA vs Hibernate JPA vs JPA

Source: Internet
Author: User
Tags relational database table

Objective

From the title of the article, it can be clearly understood that this article is to discriminate between three easy to confuse the novice technical terminology. If you know the difference and the relationship between the three nouns at the glance of the past, then this article you can not continue to read, unless you want to see what I have to explain the wrong, to correct (to find fault, haha), also welcome messages.

noun explanation
    • JPA (Java persistence Api,java persistence API), which is a specification of how to handle object-relational mappings (object-relational mappings); Defines the standard process for mapping object in Java to a relational database table.
    • Hibernate JPA, which implements the JPA specification, is the vendor of the JPA specification (consider the relationship between the JDBC specification and the MySQL database vendor, and JPA and hibernate are the same kind of relationship).

      In addition to hibernate, Eclipselink is a popular JPA vendor.

    • Spring data JPA, which is a data access abstraction for the JPA specification, spring data is designed to provide a consistent data access model for accessing data from different storage types.

JPA background

Before the introduction of the EJB 3.0 specification, many enterprise Java developers used the lightweight persistence object provided by the persistence framework (such as hibernate) or data Access object (DAO) instead of the entity bean (one of the EJBs). This is because the entity bean requires too much complex code and heavy resource usage in the previous EJB specification, and because of the interconnections and dependencies in the source code between the bean and DAO objects or the persistence framework, they can only be used in Java EE application servers. As a result, many of the features originally provided in the third-party persistence framework are incorporated into the Java Persistence API, and projects such as Hibernate (Version 3.2) and TopLink Essentials have been implemented in Java since 2006 Persistence API specification.

JPA Chronicle
    • In May 2006, the JPA 1.0 specification was eventually released as part of the JCP JSR 220.
    • In December 2009, the JPA 2.0 specification was released (JSR 317,java EE 6 platform, dependent on JPA 2.0. )
    • In April 2013, the JPA 2.1 specification was released (JSR 338,java EE 7 platform, dependent on JPA 2.1. )
    • June 2017, release of the JPA 2.2 specification (JSR 338)
Resources
    • Java persistence API, Wikipedia definition
    • Spring Data Jpa,spring Official Introduction
    • What's the difference between Hibernate and Spring Data JPA
    • JPA 2.2 improves ease of use
    • Java Persistence API Specification, official GitHub archive
    • JPA and Hibernate in ten Steps with Spring Boot and H2
    • The relationship between JPA and hibernate

Spring Data JPA vs Hibernate JPA vs JPA

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.