JPA学习札记
JPA学习笔记?最近学习了JPA,涉及的知识点很多,主要把自己理解的一些重点及难点总结下,主要内容如下:JPA核
JPA学习笔记
?
最近学习了JPA,涉及的知识点很多,主要把自己理解的一些重点及难点总结下,主要内容如下:
JPA核心概念JPA实体的状态变化
JPA实战?一、JPA核心概念1. JPA相关知识概述1. 1 什么是数据持久化?程序(内存)中的数据以某种形式保存到存储介质中,比如文件,数据库等,以达到持久化,避免数据丢失的目的。如图:


1.2 持久化技术
序列化:java内置的持久化对象的机制,以二进制字节码的形式写到硬盘文件中
JDBC:把数据保存到关系型数据库,不支持对象数据
对象关系映射ORM:把java对象映射到关系型数据库
JAVA数据对象JDO:java对象持久化规范,基于对象数据库ODB(直接保存java对象)
EJB(EJB2.x)中的实体bean:管理持久化数据的组件框架?
1)JPA与其他持久化技术的比较?序列化JDBCORMJDO(ODB)JPA持久化Java对象是否是是是具备面向对象特征是否是是是事务完整性否是是是是并发性否是是是是大数据集否是是是是对现有的关系数据库数据的支持否是是否是数据查询否是是是是严格标准/可移植性是否否否是?
2)EJB与JPA的关系EJB 2.X中,实体bean就是用来管理持久化数据的组件框架,但最大的缺点是规定了太过于严格的标准,使得开发复杂。EJB3中的实体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数据库持久层开发详解;博客部分章节