官术网_书友最值得收藏!

1.2 JPA的介紹以及開源實(shí)現(xiàn)

JPA是Java Persistence API的簡(jiǎn)稱,中文名為Java持久層API,是JDK 5.0注解或XML描述對(duì)象-關(guān)系表的映射關(guān)系,并將運(yùn)行期的實(shí)體對(duì)象持久化到數(shù)據(jù)庫(kù)中。

Sun引入新的JPA ORM規(guī)范出于兩個(gè)原因:其一,簡(jiǎn)化現(xiàn)有Java EE和Java SE應(yīng)用開發(fā)工作;其二,Sun希望整合ORM技術(shù),實(shí)現(xiàn)天下歸一。

JPA包括以下3方面的內(nèi)容:

(1)一套API標(biāo)準(zhǔn)。在javax.persistence的包下面,用來操作實(shí)體對(duì)象,執(zhí)行CRUD操作,框架在后臺(tái)替代我們完成所有的事情,開發(fā)者從煩瑣的JDBC和SQL代碼中解脫出來。

(2)面向?qū)ο蟮牟樵冋Z(yǔ)言:Java Persistence Query Language(JPQL)。這是持久化操作中很重要的一個(gè)方面,通過面向?qū)ο蠖敲嫦驍?shù)據(jù)庫(kù)的查詢語(yǔ)言查詢數(shù)據(jù),避免程序的SQL語(yǔ)句緊密耦合。

(3)ORM(object/relational metadata)元數(shù)據(jù)的映射。JPA支持XML和JDK5.0注解兩種元數(shù)據(jù)的形式,元數(shù)據(jù)描述對(duì)象和表之間的映射關(guān)系,框架據(jù)此將實(shí)體對(duì)象持久化到數(shù)據(jù)庫(kù)表中。

JPA的宗旨是為POJO提供持久化標(biāo)準(zhǔn)規(guī)范,由此可見,經(jīng)過這幾年的實(shí)踐探索,能夠脫離容器獨(dú)立運(yùn)行,方便開發(fā)和測(cè)試的理念已經(jīng)深入人心了。Hibernate 3.2+、TopLink 10.1.3以及OpenJPA都提供了JPA的實(shí)現(xiàn),以及最后的Spring的整合Spring Data JPA。目前互聯(lián)網(wǎng)公司和傳統(tǒng)公司大量使用了JPA的開發(fā)標(biāo)準(zhǔn)規(guī)范,如圖1-2所示。

圖1-2

主站蜘蛛池模板: 哈密市| 鄢陵县| 商都县| 景洪市| 桐城市| 府谷县| 临沂市| 纳雍县| 桃园县| 襄城县| 腾冲县| 崇礼县| 上思县| 叶城县| 鹤峰县| 招远市| 涿州市| 江安县| 湘潭县| 青阳县| 曲阳县| 天柱县| 绥滨县| 南通市| 西乡县| 资源县| 香港 | 曲麻莱县| 黑龙江省| 广东省| 黔西县| 和硕县| 武城县| 三亚市| 理塘县| 营山县| 奎屯市| 白山市| 西峡县| 巴彦县| 新竹市|