博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JPA(一):简介
阅读量:7118 次
发布时间:2019-06-28

本文共 1064 字,大约阅读时间需要 3 分钟。

JPA是什么

Java Persistence API:用于对象持久化的API

Java EE 5.0平台标准的ORM规范,使得应用程序以统一的方式访问持久层。

JPA和Hibernate的关系

  JPA是Hibernate的一个抽象(就像JDBC和JDBC驱动的关系):

1)JPA是规范:JPA本质上就是一种ORM规范,不是ORM框架------因为JPA并未提供ORM实现,它只是制定了一些规范,提供了一些编程的API接口,但具体实现则由ORM厂商提供实现。

2)Hibernate是实现:Hibernate除了作为ORM框架之外,它也是一种JPA实现。

  从功能上来说,JPA是Hibernate功能的一个子集。

 JPA的供应商

  JPA的目的之一是制定一个可以由很多供应商实现的API,目前Hibernate3.2+、TopLink10.1+以及OpenJPA都提供了JPA的实现。

  Hibernate

1)JAP的始作俑者就是Hibernate的作者;

2)Hibernate从3.2开始兼容JAP。

  OpenJPA

OpenJPA是Apache组织提供的开源项目

  TopLink

TopLink以前收费,如今早已开源。

JPA的优势

标准化

  提供相同的API,保证了基于JPA开发的企业应用程序能够经过少量的修改就可以在不同的JPA框架下运行。

简单易容,集成方便

  JPA的主要目标之一就是提供更加简单的编程模型,在JPA框架下创建实体和创建Java类一样简单,只需要使用javax.persistence.Entity进行注解;JPA的框架和接口都非常简单。

可媲美JDBC的查询能力

  JPA的查询语言是面向对象的,JPA定义了独特的JPQL等通常只有SQL才能提供的高级查询特征,甚至还能够支持子查询。

支持面向对象的高级特性

  JPA中能够支持面向对象的高级特征,如类之间的集成、多态和类之间的复杂关系,最大限度的使用面向对象的模型。

JPA包括3方面的技术

ORM映射元数据

  JPA支持XML和JDK5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中。

JPA的API

  用来操作实体对象,执行CRUD操作,框架在后台完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来。

查询语句(JPQL)

  这是持久化操作中很重要的一个方面,通过面向对象而非面向数据库的查询语言查询数据,避免程序和具体的SQL紧密耦合。

 

转载地址:http://ldfel.baihongyu.com/

你可能感兴趣的文章
IBM发表论文:可能已找到处理量子计算退相干的方法
查看>>
.NET Core 3.0中的数据库驱动框架System.Data
查看>>
Firefox Quantum支持跨浏览器插件架构
查看>>
Oracle收购Talari,第一家SD-WAN公有云提供商出现
查看>>
数据库设计中的9大常见错误
查看>>
当我们在谈大前端的时候,我们谈的是什么
查看>>
柔性自动化在物流的应用及探索
查看>>
中台之上(五):业务架构和中台的难点,都是需要反复锤炼出标准模型
查看>>
阿里巴巴和京东进军美国电商界,分别针对企业用户和普通用户
查看>>
Git 2.19 对Diff、Branch和Grep等做了改进
查看>>
SignalR Core尝鲜
查看>>
区块链技术精华:四十种智能合约支持平台(三)
查看>>
阿里9000万欧元收购Flink母公司Data Artisans
查看>>
The Agile Mind-Set作者访谈
查看>>
反应式服务的性能应该如何测试?
查看>>
使用Java获取服务器IP地址
查看>>
Visual Studio 2017 15.7预览版发布
查看>>
阿里云出现大规模宕机,原因系IO HANG,或将做出赔偿
查看>>
区块链和数据科学:如果同时应用这两种技术,将会实现什么?
查看>>
基于Flink的超大规模在线实时反欺诈系统的建设与实践
查看>>