JPA的优势都有哪些


Posted in 面试题 onJuly 04, 2013
1.JPA 是 JCP 组织发布的 Java EE 标准之一,因此任何符合 JPA 标准的框架都遵循同样的架构,提供相同的访问 API,这保证了基于JPA开发的企业应用能够经过少量的修改就能够在不同的JPA框架下运行。
2.JPA提供了对容器级特性的支持
JPA 框架中支持大数据集、事务、并发等容器级事务,这使得 JPA 超越了简单持久化框架的局限,在企业应用发挥更大的作用。
3.JPA简单易用,集成方便
JPA的主要目标之一就是提供更加简单的编程模型:在JPA框架下创建实体和创建Java 类一样简单,没有任何的约束和限制,只需要使用 javax.persistence.Entity进行注释;JPA的框架和接口也都非常简单,没有太多特别的规则和设计模式的要求,开发者可以很容易的掌握。JPA基于非侵入式原则设计,因此可以很容易的和其它框架或者容器集成。
4.JPA拥有可媲美JDBC的查询能力
JPA的查询语言是面向对象而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是Hibernate HQL的等价物。JPA定义了独特的JPQL(Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体,而不是关系数据库的表,而且能够支持批量更新和修改、JOIN、GROUP BY、HAVING 等通常只有 SQL 才能够提供的高级查询特性,甚至还能够支持子查询。
5.JPA支持面向对象的高级特性
JPA 中能够支持面向对象的高级特性,如类之间的继承、多态和类之间的复杂关系,这样的支持能够让开发者最大限度的使用面向对象的模型设计企业应用,而不需要自行处理这些特性在关系数据库的持久化。

Tags in this post...

面试题 相关文章推荐
解释一下ArrayList Vector和LinkedList的实现和区别
Apr 26 面试题
如何打开WebSphere远程debug
Oct 10 面试题
2019年Java 最常见的 面试题
Oct 19 面试题
什么是"引用"?申明和使用"引用"要注意哪些问题?
Mar 03 面试题
天游软件面试
Nov 23 面试题
What is view? why do we have view?
Jun 22 面试题
南京软件公司的.net程序员笔试题
Aug 31 面试题
VLAN和VPN有什么区别?分别实现在OSI的第几层?
Dec 23 面试题
恶意软件的定义
Nov 12 面试题
什么是封装
Mar 26 面试题
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
Sep 26 面试题
Java软件工程师综合面试题笔试题
Sep 08 面试题
J2EE中的容器都包括哪些
Aug 21 #面试题
J2EE面试题
Mar 14 #面试题
J2EE包括哪些技术
Nov 25 #面试题
J2EE的优越性主要表现在哪些方面
Mar 28 #面试题
J2EE面试题集锦(附答案)
Aug 16 #面试题
国外的一些J2EE面试题一
Oct 13 #面试题
J2EE模式面试题
Oct 11 #面试题
You might like
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
Yii中表单用法实例详解
2016/01/05 PHP
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
Jquery iframe内部出滚动条
2010/02/11 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
javascript 获取模态窗口的滚动位置代码
2013/08/06 Javascript
node.js 动态执行脚本
2016/06/02 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
JS实现放大、缩小及拖拽图片的方法【可兼容IE、火狐】
2016/08/23 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
2016/08/27 Javascript
jquery无法为动态生成的元素添加点击事件的解决方法(推荐)
2016/12/26 Javascript
jQuery实现jQuery-form.js实现异步上传文件
2017/04/28 jQuery
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
Vue单文件组件基础模板小结
2017/08/10 Javascript
基于vue.js 2.x的虚拟滚动条的示例代码
2018/01/23 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
JS实现指定区域的全屏显示功能示例
2019/04/25 Javascript
vue中v-for循环选中点击的元素并对该元素添加样式操作
2020/07/17 Javascript
JavaScript实现矩形块大小任意缩放
2020/08/25 Javascript
python简单文本处理的方法
2015/07/10 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
python使用正则筛选信用卡
2019/01/27 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
2019/12/09 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
深入浅析python变量加逗号,的含义
2020/02/22 Python
pycharm中导入模块错误时提示Try to run this command from the system terminal
2020/03/26 Python
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
乌克兰在线药房:Аптека24
2019/10/30 全球购物
Ajax的优点和缺点
2014/11/21 面试题
学校三八妇女节活动情况总结
2014/03/09 职场文书
遗嘱公证书标准样本
2014/04/08 职场文书
2014年党风建设工作总结
2014/11/19 职场文书
计划生育工作总结2015
2015/04/03 职场文书
2015年检验科工作总结
2015/04/27 职场文书
十八大观后感
2015/06/12 职场文书
升学宴学生致辞
2015/09/29 职场文书