JPA(Java Persistence API)Java持久化API-介绍

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

JPA全称: Java Persistence API

JPA的宗旨是为POJO提供持久化标准规范,能够脱离容器独立运行,很方便开发和测试。
JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。

出现的原因:

简化现有Java EE和Java SE应用的对象持久化的开发工作;
Sun希望整合对ORM技术,实现持久化领域的统一。
JPA的实现框架有:Hibernate EntityManager(RedHat)、TopLink Essentials(Oracle/GlassFish,EJB 3.0中的JPA参考实现),Apache OpenJPA(BEA)、EclipseLink(http://www.eclipse.org/eclipselink/)、JDO等ORM框架

JPA技术:

1.ORM映射元数据:
JPA支持XML和JDK 5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持 久化到数据库表中;
2.JPA的API:

用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来。
3.查询语言:
通过面向对象而非面向数据库的查询语言查询数据,避免程序的SQL语句紧密耦合

ORM 是Object-Relation-Mapping,即对象关系影射技术,是对象持久化的核心。ORM是对JDBC的封装,从而解决了JDBC的各种存在问题:

JPA是目前比较流行的一种ORM技术之一,所以他拥有ORM技术的各种特点,当然他还有自己的一些优势:

1.标准化

JPA 是 JCP 组织发布的 Java EE 标准之一,因此任何声称符合 JPA 标准的框架都遵循同样的架构,提供相同的访问 API,这保证了基于JPA开发的企业应用能够经过少量的修改就能够在不同的JPA框架下运行。

2.对容器级特性的支持

JPA 框架中支持大数据集、事务、并发等容器级事务,这使得 JPA 超越了简单持久化框架的局限,在企业应用发挥更大的作用。

3.简单易用,集成方便

JPA的主要目标之一就是提供更加简单的编程模型:在JPA框架下创建实体和创建Java 类一样简单,没有任何的约束和限制,只需要使用 javax.persistence.Entity进行注释;JPA的框架和接口也都非常简单,没有太多特别的规则和设计模式的要求,开发者可以很容易的掌握。JPA基于非侵入式原则设计,因此可以很容易的和其它框架或者容器集成。

4.可媲美JDBC的查询能力

JPA的查询语言是面向对象而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是Hibernate HQL的等价物。JPA定义了独特的JPQL(Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体,而不是关系数据库的表,而且能够支持批量更新和修改、JOIN、GROUP BY、HAVING 等通常只有 SQL 才能够提供的高级查询特性,甚至还能够支持子查询。

5.支持面向对象的高级特性

JPA 中能够支持面向对象的高级特性,如类之间的继承、多态和类之间的复杂关系,这样的支持能够让开发者最大限度的使用面向对象的模型设计企业应用,而不需要自行处理这些特性在关系数据库的持久化。

JPA规范介绍及实例(Java数据持久化解决方案) ORM框架的出现,使直接存储对象成为可能,它们将Java对象拆分成SQL语句,并利用JDBC保存到数据库。但是不同的框架,使用起来却是很大不同的,这也导致开发者需要学习各种不同的ORM框架(虽然你可能觉得精通一个ORM框架就够了,但你也不能保证不会碰到需要维护别人的程序的时候,当然,他们很可能就使用了不同的框架)。而JAP规范,正式为了解决这个问题:规范ORM框架,是ORM框架有统一的接口和用法。至于规范,我们可以把它当作接口来理解,它规定了应该怎么做,但不包含任何实现。所以JPA并不能单独使用,必须指定实 阅读详情

相关推荐

持久化APIJPA】完全掌握

JPA概述 JPAJava Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化数据库中。 Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java EE和Java SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。 入门案例 在介绍注解之前,我们先用JPA写一个入门案例。...

。。。 2435

java持久化api_使用Java持久性API

java持久化api Java Persistence APIJPA)是供应用程序开发人员理解的重要Java功能。 它准确地将Java开发人员如何将对对象的方法调用转换为访问,持久化和管理NoSQL和关系数据库中存储的数据。 本文通过构建自行车借贷服务的教程示例详细研究了JPA。 本示例将使用Spring Boot框架,MongoDB数据库( 不再是开源的 )和Maven包管理器为较大的应...

cumo3681的博客 622

persistence-api:提供基本存储库的通用接口

持久性API 提供基本存储库的通用接口。 实作

Java Persistent API 注解

一对一关系   在面向对象的世界里,类 A 和类 B 之间形成一对一关系必须满足如下条件:   1. 对象 A1 引用了对象 B1;   2. 类 A 的其它对象 An 不能引用同样的对象 B1.   在关系数据库中,我们通常使用唯一外键的方式来实现一对一关系,下面这个图说明了这种的情况。   图 1. 关系数据库中的一对一关系   下面开始介绍 OpenJPA 中实现实体之间一对...

sifutian的专栏 1485

5 HibernateJava Persistence API (JPA) 入门

5 HibernateJava Persistence API (JPA) 入门

又言又语 5995

JPA Java Persistence API学习笔记

前言:学习Hibernate之前需要先了解JPA JPA全称(JavaPersistenceAPI),它是官方提出的Java持久化规范。需要有Provider实现功能。而Hibernate就是JPA Provider中最强的一个。 JPA包括以下3个方面的技术 1)ORM映射元数据。 2)API,用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情。 3)查询语言,通过面向对象而非面向数据库的查询语句查询数据,避免程序的SQL语句耦合。 Hibernate简介 Hibernate是一个开放源代

m0_51179717的博客 2083

Java Persistence API (JPA)Java EE 规范中的一个子规范,它提供了一种标准的框架,用于将 Java 对象映射到关系数据库

Java Persistence API (JPA)Java EE 规范中的一个子规范,它提供了一种标准的框架,用于将 Java 对象映射到关系数据库中。JPA 使得开发者能够专注于编写数据访问逻辑,而无需过多地关注底层的数据库细节。

[Blog][Domain] programb.blog.csdn.net 1846

JPAJava Persistence APIJava持久化API)从入门到精通

# 1.JPAHibernate的关系 1.1 JPA的供应商 1.2 JPA的优势 1.3 JPA 包含三方面的技术 2.Holle Word 2.1 使用JPA持久化对象的步骤 创建 persistence.xml, 在这个文件中配置持久化单元 ------需要指定跟哪个数据库进行交互; ------需要指定 JPA 使用哪个持久化框架以及配置该框架的基本属性 2.2创建实体...

qq_42531874的博客 7620

JPA Persistence Unit

JPA Persistence Unit<br />A JPA Persistence Unit is a logical grouping of user defined persistable classes (entity classes, embeddable classes and mapped superclasses) with related settings. Defining a persistence unit is optional when using ObjectDB

xgbjmxn的专栏 3933

【回炉重造】JPA(Java/Jakarta Persistence API)

JPAJava/Jakarta Persistence API)是 Java持久化标准,用于将 Java 对象持久化数据库中。🐇

Hellw0rld的博客 1130

什么是JPAJava Persistence API简介

什么是JPAJava Persistence API简介 作为规范,Java Persistence API关注持久性,它将Java对象的创建过程和具体的创建形式解耦。并非所有Java对象都需要持久化,但大多数应用程序都会保留关键业务对象。JPA规范允许您定义应该保留哪些对象,以及如何在Java应用程序中保留这些对象。 JPA本身不是一个工具或框架; 相反,它定义了一组可以由任何工具或...

yinghe_one的博客 902

jpa 关闭自动提交_Hibernate 中怎么用 Java Persistence API (JPA)

引言在hibernate中,有三种方式来实现crud。hibernate api+ hbm.xml(xml配置文件)hibernate api+Annotation Mappings(注解)Java Persistence API (JPA)熟悉hibernate的同学都知道,前两种是用的比较多的。jpa呢在spring data 中也用过,但是原生的jpa这套api本人还没有用过。所以今天趁机来...

weixin_42659252的博客 955

JPA系列之对象持久化API JPA简介

JPAJava Persistence API,用于对象持久化API注意:JPA是规范,不是ORM框架,是ORM框架的规范,JPA没有实现ORM,具体实现由ORM厂商提供现在JPA具体实现框架有:Hibernate、OpenJPA、TopLinkJPA的优势:标准化: 提供相同的 API,这保证了基于JPA 开发的企业应用能够经过少量的修改就能够在不同的 JPA 框架下运行。 简单易用,集

Nicky's blog 6990

java xsd 持久化_对象持久化APIJPA入门教程

JPAJava Persistence API,用于对象持久化API注意:JPA是规范,不是ORM框架,是ORM框架的规范,JPA没有实现ORM,具体实现由ORM厂商提供现在JPA具体实现框架有:Hibernate、OpenJPA、TopLinkJPA的优势:##标准化: 提供相同的 API,这保证了基于JPA 开发的企业应用能够经过少量的修改就能够在不同的 JPA 框架下运行。简单易用,...

weixin_42168750的博客 172

JPA介绍persistence.xml配置介绍

JPA 全称是:Java Persistence API 是由EJB 3.0软件专家组开发,其宗旨是为POJO提供持久 化标准规范,了解JPApersistence.xml 开始。它的作用是用来配置实体映射及数据库信息.

Captain_J的博客 2675

JPA(Java Persistence API,Java持久化API)接口的概述

aaasss7788的博客 294

Java JPA规范详解:Java Persistence API核心概念与实现

JPA规范定义了一套标准API,主要位于javax.persistence包中。它通过简单的注解或XML配置,实现了Java对象到数据库表的映射,使开发者能够以面向对象的方式操作数据库JPA自动处理SQL生成、结果集映射和事务管理等繁琐任务,大幅提高了开发效率。从历史角度看,JPA是EJB实体Bean技术的进化,吸取了各种ORM框架的优点,形成了更加灵活和易用的持久化解决方案。JPA实体是普通的Java对象(POJO),通过@Entity注解标记。

程序媛学姐的博客 1101

jpa 默认生成sql语句_什么是JPAJava Persistence API简介

作为规范,Java Persistence API关注持久性,它将Java对象的创建过程和具体的创建形式解耦。并非所有Java对象都需要持久化,但大多数应用程序都会保留关键业务对象。JPA规范允许您定义应该保留哪些对象,以及如何在Java应用程序中保留这些对象。JPA本身不是一个工具或框架; 相反,它定义了一组可以由任何工具或框架实现的概念。虽然JPA的对象关系映射(ORM)模型最初基于Hiber...

weixin_35415045的博客 263
上一篇: Java 的 JCP(Java Community Process)Java标准制定组织
下一篇: JPA(Java Persistence API)Java持久化API-应用
努力突破
博客等级 码龄16年 35粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值