Java中的JPA是什么意思?「建议收藏」

Java中的JPA是什么意思?「建议收藏」JPA(JavaPersistenceAPI),Java持久层API。它可以通过注解(JDK5.0)或者XML的方式描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。它为POJO提供持久化标准规范,Hibernate3.2+、TopLink10.1.3以及OpenJPA都提供了JPA的实现它的总体思想和现有Hibernate、TopLink、JDO等ORM框架大体一致。它包括以下3方面的技术:(1)ORM映射元数据JPA支持XML和JDK5.0注解两种元.

大家好,又见面了,我是你们的朋友全栈君。

JPAJava Persistence API ),Java持久层API

 

它可以通过注解(JDK5.0)或者XML的方式描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。

它为POJO提供持久化标准规范,Hibernate3.2+、TopLink 10.1.3以及OpenJPA都提供了JPA的实现

它的总体思想和现有Hibernate、TopLink、JDO等ORM框架大体一致。

它包括以下3方面的技术:

(1)ORM映射元数据

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

(2)API

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

(3)查询语言

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

 

补充:

【1】POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。

【2】ORM (Object Relational Mapping)对象关系映射,是一种解决面向对象与关系数据库存在的互不匹配的现象的技术。

【3】元数据,描述数据的数据。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148160.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • busybox 安装mysql_busybox怎么安装

    busybox 安装mysql_busybox怎么安装把”busybox-armv6l”重命名为”busybox”;将busybox传入手机的SD卡,打开terminal(Linux,Mac)或cmd(Windows)adbpush~/Desktop/busybox/mnt/sdcard其中的~/Desktop请根据自己的情况替换成正确的路径输入以下命令,为了在/system目录写入文件adbshellsumount-oremount,r…

    2022年7月25日
    14
  • python下载hashlib命令_python之hashlib模块[通俗易懂]

    python下载hashlib命令_python之hashlib模块[通俗易懂]importhashlib#md5加密工具,md5是不可逆的,所以只能比较密文,不能比较明文,python中不仅仅提供md5加密方法,还提供sha1,sha224,sha256,sha384,sha512,MD5加密算法test_md5=hashlib.md5()test_md5.update(bytes(‘123′,encoding=’utf-8’))ret=test_md5.hexd…

    2022年6月1日
    40
  • keil5如何生成bin文件_怎样创建一个文件夹

    keil5如何生成bin文件_怎样创建一个文件夹原因我碰到原因就是SCT加载文件的问题,我定义了不少段,所以导致bin文件变成了文件夹一般的Bin生成方法:在USER里面Run#1加上$K\ARM\ARMCC\bin\fromelf.exe–bin-o”$L@L.bin””#L”,生成错误出现文件夹,如果没有自定义SCT文件就可使用这种方法解决方法Keil里面的fromelf帮助,可以去看看bincombined_base与你自己的起始地址有关,$K\ARM\ARMCC\bin\fromelf.exe–bincombine

    2022年10月8日
    0
  • java quartz 性能_[译]如何优化Quartz调度器性能

    java quartz 性能_[译]如何优化Quartz调度器性能译文由杰微刊兼职译者刘晓冬翻译,杰微刊审校及发布。Quartz是一个流行的Java应用开源作业调度库。eBay在自己的很多项目中用它来调度作业。Quartz在低负载时运行良好,但在高负载时会遇到问题。许多触发器会失效,导致执行线程无法得到任务,大量作业阻塞在触发器表中。所以我们必须进行性能调优。本章描述我们是如何逐步解决问题并优化Quartz的。问题在哪?1.Quartz作业不能被调度和执行。2….

    2022年7月14日
    12
  • java培训学校杭州_杭州Java培训班

    java培训学校杭州_杭州Java培训班前言这段时间也一直在学习Netty相关知识,因为涉及知识点比较多,也走了不少弯路。目前网上关于Netty学习资料玲琅满目,不知如何下手,其实大家都是一样的,学习方法和技巧都是总结出来的,我们在没有找到很好的方法之前不如按部就班先从基础开始,一般从总分总的渐进方式,既观森林,又见草木。Netty是一款提供异步的、事件驱动的网络应用程序框架和工具,是基于NIO客户端、服务器端的编程框架。所以这里我们先以NIO和依赖相关的基础铺垫来进行剖析讲解,从而作为Netty学习之旅的一个开端。为什么学Java?Jav

    2022年10月3日
    0
  • win10edge启用html5,edge浏览器如何启用flash?win10 Edge浏览器禁用flash方法

    win10edge启用html5,edge浏览器如何启用flash?win10 Edge浏览器禁用flash方法Win10系统中新的默认浏览器Edge已经足够快了,如果想让它更快,可以禁用浏览器里面的Flash动画播放功能来帮助达到更快的上网体验,今天小编就向大家介绍一下Edge浏览器中Flash启用与禁用简单步骤。希望大家会喜欢。win10系统edge浏览器启用和禁用的方法:我们用Windows10的新Edge浏览器打开网页,如果这个网页上有Flash播放的声音、视频内容,在其标签…

    2022年5月12日
    77

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号