最近学习了JPA,涉及的知识点很多,主要把自己理解的一些重点及难点总结下,主要内容如下:
一、JPA核心概念
1. JPA相关知识概述
1. 1 什么是数据持久化?
程序(内存)中的数据以某种形式保存到存储介质中,比如文件,数据库等,以达到持久化,避免数据丢失的目的。如图:
1.2 持久化技术
序列化:
java内置的持久化对象的机制,以二进制字节码的形式写到硬盘文件中
JDBC:
把数据保存到关系型数据库,不支持对象数据
对象关系映射ORM:
把java对象映射到关系型数据库
JAVA数据对象JDO:
java对象持久化规范,基于对象数据库ODB(直接保存java对象)
EJB(
EJB2.x
)中的实体bean:
管理持久化数据的组件框架
1)JPA
与其他持久化技术的比较
|
序列化
|
JDBC
|
ORM
|
JDO(
ODB)
|
JPA
|
持久化
Java
对象
|
是
|
否
|
是
|
是
|
是
|
具备面向对象特征
|
是
|
否
|
是
|
是
|
是
|
事务完整性
|
否
|
是
|
是
|
是
|
是
|
并发性
|
否
|
是
|
是
|
是
|
是
|
大数据集
|
否
|
是
|
是
|
是
|
是
|
对现有的关系数据库数据的支持
|
否
|
是
|
是
|
否
|
是
|
数据查询
|
否
|
是
|
是
|
是
|
是
|
严格标准
/
可移植性
|
是
|
否
|
否
|
否
|
是
|
2)EJB与JPA的关系
EJB 2.X
中,
实体bean就是用来管理持久化数据的组件框架
,但
最大的缺点是规定了太过于严格的标准
,使得开发复杂。
EJB
3中的实体
Bean
(
Entity Bean
)逐渐使用新的规范
JPA
替代。并且
JPA
不仅能在
EJB
环境中使用,也能在
J2SE
的环境中使用,相对于
EJB 2.X
中的实体
Bean
,使用的范围更光阔。
如图
所示,清楚的表明了
EJB3
与
JPA
的关系。
1.3 什么是JPA?
全称是 Java Persistence
API,
主要是解决各种ORM框架的差异,而由SUN在J2EE5规范中提出的Java对象持久化规范。
JPA
吸取了目前
Java
持久化技术的优点,规范、简化了
Java
对象的持久化工作。核心
包含一套接口,但没有提供实现,目前已有Hibernate,OpenJPA,TopLink等框架实现了JPA规范。
2. 理解 实体 实体管理器 持久化上下文 事务管理
二、JPA实体的状态变化(待续)
三、JPA实战(待续)
3.1 J2SE
3.2 J2EE
【学习资料】
推荐书籍:EJB JPA数据库持久层开发详解;
博客部分章节
- 大小: 22.8 KB
- 大小: 32.8 KB
- 大小: 19.6 KB
- 大小: 324.5 KB
分享到:
相关推荐
java jee技术,jpa的使用接受学习笔记。
JPA学习笔记
JPA学习笔记-EJB-04JPA关联映射总结 JPA JPA关联映射JPA学习笔记-EJB-04JPA关联映射总结 JPA JPA关联映射
传智播客——JPA学习笔记 网络上有一份pdf格式的《JPA学习笔记》,但是内容排版有点乱,而且有缺失的部分,小弟从原来的blog处拷贝出来,并加以排版,制作成了chm格式的,大家应该知道chm格式比较适合作为参考资料或...
这里面的太贵了,来个免费的. 这是一个很不错的笔记哦
在学习JPA的过程中将JPA的核心的内容整理了一下做成一份JPA学习笔记希望能够帮助到其他正在学习或者将要学习JPA的朋友。
jpa 详解 学习笔记 传智播客 内容经典
JPA学习笔记-EJB-06JPA+Spring使用经验。
本文是学习 JPA 笔记,可能会根据自己的学习进度逐渐完善。...随着笔者的学习笔记,大家一起学习吧,还是那句话,有什么问题 大家一起探讨。有什么错误希望指证!谢谢。 http://blog.csdn.net/suhuanzheng7784877
总结一下关于JPA的主键生成策略,JPA是用@GeneratedValue标记来注释的。一般的我把主键生成分成两大类。第一个就是简单的单字段主键类型,一个就是复杂的复合主键类型。我们分2种情况分别讨论。 第一种单字段主键...
初学jpa,有一些体会和大家分享一下,主要是介绍了jpa中state的概念和应用
上次简单介绍了JPA的基本部署和操作过程,算是认识JPA了,下面我们继续学习JPA吧,我们从JPA的注解标记@Table和@Column开始逐渐介绍。
jpa常用方法,适合新手下载学习 其中包括select/upate/delete/insert 以及in、notin、等等
网上整理的学习笔记,对于初学者认识,文档归集还是有好处的
JPA入门学习笔记,包含实体表的关联映射
虽然持久化实体的状态在ORM中是一个老生常谈的问题,但是说实在的,我们在开发过程中真的不太在意实体的状态。在Web一般情况下也都是交给Spring去管理实体管理器(EntityManager),所以我们还是有必要啰嗦一下,...
jpa 全面学习资料 入门 实战 示例 jpa开发手册 JPA_全面讲解 JPA使用入门_基础 JPA学习笔记 JPA注解 JPA简介