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...

面试题 相关文章推荐
请说出你所知道的线程同步的方法
Apr 19 面试题
C有"按引用传递"吗
Sep 06 面试题
编写类String 的构造函数、析构函数和赋值函数
Sep 09 面试题
将"引用"作为函数参数有哪些特点
Apr 05 面试题
MySQL面试题
Jan 12 面试题
OLEDBConnection和SQLConnection有什么区别
May 31 面试题
西部世纪.net笔试题面试题
Apr 03 面试题
面向对象概念面试题(.NET)
Nov 04 面试题
什么是索引指示器
Aug 20 面试题
编写一个类体现构造,公有,私有方法,静态,私有变量
Aug 10 面试题
法雷奥SQA(electric)面试问题
Jan 23 面试题
EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?
Feb 17 面试题
J2EE中的容器都包括哪些
Aug 21 #面试题
J2EE面试题
Mar 14 #面试题
J2EE包括哪些技术
Nov 25 #面试题
J2EE的优越性主要表现在哪些方面
Mar 28 #面试题
J2EE面试题集锦(附答案)
Aug 16 #面试题
国外的一些J2EE面试题一
Oct 13 #面试题
J2EE模式面试题
Oct 11 #面试题
You might like
解决控件遮挡问题:关于有窗口元素和无窗口元素
2007/01/28 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
使用PHP开发留言板功能
2019/11/19 PHP
用JS剩余字数计算的代码
2008/07/03 Javascript
基于jquery的$.ajax async使用
2011/10/19 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
2013/01/25 Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
2014/05/05 Javascript
轻量级的原生js日历插件calendar.js使用指南
2015/04/28 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
基于jQuery实现的仿百度首页滑动选项卡效果代码
2015/11/16 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
canvas仿iwatch时钟效果
2017/03/06 Javascript
使用vue.js写一个tab选项卡效果
2017/03/25 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
JS实现数组简单去重及数组根据对象中的元素去重操作示例
2018/01/05 Javascript
VUE 使用中踩过的坑
2018/02/08 Javascript
Angular6中使用Swiper的方法示例
2018/07/09 Javascript
Element-UI中Upload上传文件前端缓存处理示例
2019/02/21 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
React中使用外部样式的3种方式(小结)
2019/05/28 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
2019/05/28 Javascript
JS实现网站吸顶条
2020/01/08 Javascript
Python实现的爬虫刷回复功能示例
2018/06/07 Python
tensorflow使用神经网络实现mnist分类
2018/09/08 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
Python爬虫实现“盗取”微信好友信息的方法分析
2019/09/16 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
高考考python编程是真的吗
2020/07/20 Python
Python timeit模块原理及使用方法
2020/10/10 Python
html5实现canvas阴影效果示例
2014/05/07 HTML / CSS
国际性能运动服装品牌:Dare 2b
2018/07/27 全球购物
爱岗敬业演讲稿范文
2014/01/14 职场文书
各国货币符号大全
2022/02/17 杂记
漫画《催眠麦克风-Dawn Of Divisions》第二卷PV公开
2022/04/05 日漫
mysqldump进行数据备份详解
2022/07/15 MySQL
Nginx如何限制IP访问只允许特定域名访问
2022/07/23 Servers