Hibernate是一個開放源代碼的對象關系映射架構,它對JDBC進行了非常輕量級的對象封裝,它将POJO與資料庫表建立映射關系,是一個全自動的orm架構,hibernate可以自動生成SQL語句,自動執行,使得Java程式員可以随心所欲的使用對象程式設計思維來操縱資料庫。
JPA的全稱是Java Persistence API, 即Java 持久化API,是SUN公司推出的一套基于ORM的規範,内部是由一系列的接口和抽象類構成。
JPA通過JDK 5.0注解描述對象-關系表的映射關系,并将運作期的實體對象持久化到資料庫中。
JPA規範本質上就是一種ORM規範,注意不是ORM架構——因為JPA并未提供ORM實作,它隻是制訂了一些規範,提供了一些程式設計的API接口,但具體實作則由服務廠商來提供實作。
是以 真正幹活的是 Hibernate ,Hibernate 裡面其實也就是JDBC...

.
JPA和Hibernate的關系就像JDBC和JDBC驅動的關系,JPA是規範,Hibernate除了作為ORM架構之外,它也是一種JPA實作。JPA怎麼取代Hibernate呢?
JDBC規範可以驅動底層資料庫嗎?答案是否定的,也就是說,如果使用JPA規範進行資料庫操作,底層需要hibernate作為其 實作類 完成資料持久化工作。