何为JPA
JPA即JavaPersistenceAPI,这门技术是06年05月份由SUN官方提出的Java持久化规范
1、它为Java开发人员提供了一种对象/关系映射工具来管理Java应用中的关系数据
它的出现主要是为了简化现有的持久化开发工作和整合ORM技术
结束现在Hibernate、TopLink、JDO等ORM框架各自为营的局面
2、JPA只是一套规范,不是产品,JPA规范是由Hibernate的作者主导制定的
JPA是在充分吸收现有ORM框架的基础上发展而来的,具有易于使用、伸缩性强等优点
采用JPA开发的应用可以运行在实现JPA规范的持久化产品中,如Hibernate、TopLink等
3、JPA不是一种新的ORM框架,它的出现只是用于规范ORM技术,不能取代现有ORM框架
相反,采用JPA开发时仍要用到ORM框架,但此时开发的应用不再依赖于某个持久化提供商
应用可以在不修改代码的情况下在任何JPA环境下运行,真正做到低耦合,可扩展的程序设计
JPA的思想
JPA的总体思想和现有Hibernate、TopLink、JDO等ORM框架大体一致。总的来说包括以下3方面的技术:
1、ORM映射元数据
JPA支持XML和JDK5注解两种元数据的形式
所谓元数据,是描述对象和表之间的映射关系
框架根据元数据将实体对象持久化到数据库表中
2、Java持久化API
用来操作实体对象,执行CRUD操作
框架在后台替我们完成所有的事情
开发者可以从繁琐的JDBC和SQL代码中解脱出来
3、查询语言
通过面向对象而非面向数据库的查询语言查询数据
避免程序的SQL语句紧密耦合
这是持久化操作中很重要的一方面
JPA所依赖的Hibernate的JAR文件
1、Hibernate核心包(8个文件)
hibernate-distribution-3.3.1.GA//..//Hibernate3.jar
hibernate-distribution-3.3.1.GA//..//lib//required//*.jar
hibernate-distribution-3.3.1.GA//..//lib//bytecode//cglib///hibernate-cglib-repack-2.1_3.jar
2、Hibernate注解包(3个文件)
hibernate-annotations-3.4.0.GA//..//hibernate-annotations.jar
hibernate-annotations-3.4.0.GA//..//lib//ejb3-persistence.jar
hibernate-annotations-3.4.0.GA//..//lib//hibernate-commons-annotations.jar
3、Hibernate针对JPA的实现包(3个文件)
hibernate-entitymanager-3.4.0.GA//..//hibernate-entitymanager.jar
hibernate-entitymanager-3.4.0.GA//..//lib//test//log4j.jar
hibernate-entitymanager-3.4.0.GA//..//lib//test//slf4j-log4j12.jar
4、合计14个JAR文件
注意:這些JAR文件不要放在含有中文或空格的路径下
下面是示例代码,这是一个Java Project
首先是位于类路径的META-INF下的persistence.xml文件
然后是用到的一个枚举类Gender.java
采用Annotation映射元数据的实体类Person.java
最后是用到的JUnit4单元测试类JPADemoTest.java
分享到:
相关推荐
初识JPA 2.0** Java Persistence API (JPA) 是Java平台上的一个标准,用于处理对象关系映射(ORM),它允许Java开发者将对象模型与关系数据库进行交互。JPA 2.0是这个标准的一个重要版本,引入了许多新特性和改进...
JPA概念: JPA(Java Persistence API,Java持久化API),定义了对象-关系映射(ORM)以及实体对象持久化的标准接口 JPA概述: Java EE 5.0 平台标准的 ORM 规范,使得应用程序以统一的方式访问持久层
│ 01 Spring Data JPA 初识.mp4 │ 02 Spring Data Common 之 Repoitory 如何全面掌握?.mp4 │ 04 如何利用 Repoitory 中的方法返回值解决实际问题?.mp4 │ 05 @Query 解决了什么问题?什么时候应该选择它?....
initialValue表示主键初识值,默认为0。allocationSize表示每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50。 三、IDENTITY主键生成策略 IDENTITY主键生成策略是通过数据库自动维护...
SpringBoot框架是现代Java开发中的一个热门选择,它简化了基于Spring的应用程序的创建和配置过程。...通过提供的文件"2019-7-25_初识SpringBoot框架开发",你可以进一步学习SpringBoot的基本用法和实践案例。
Spring Data是一系列项目,旨在简化数据库访问,支持多种数据存储技术,如JPA、MongoDB等。它提供了一种统一的API来操作数据,减少了编写数据访问层代码的工作量。 7. **Spring Security**: Spring Security是...
SpringBoot初识:快速搭建与应用 SpringBoot是由Pivotal团队提供的全新框架,其设计目标是用来简化新Spring应用的初始搭建以及开发过程。它集成了大量常用的第三方库配置,如JPA、Thymeleaf、WebSocket等,使得...
它提供了一套全面的API和服务,包括Web组件、Servlet、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JPA(Java Persistence API)等,用于构建分布式、可伸缩的企业系统。 2. **字节码文件(....
**标题:“Hibernate(3.6)之初识”** 在Java世界中,ORM(Object-Relational Mapping)框架是连接数据库和应用程序的重要桥梁,而Hibernate作为其中的翘楚,深受开发者喜爱。本文将聚焦于Hibernate 3.6版本,探讨其...
通过"HelloWorld1"的学习,开发者可以了解JavaEE的基本开发环境和流程,为进一步学习JavaEE的其他高级特性,如JPA(Java Persistence API)、JSF(JavaServer Faces)、CDI(Contexts and Dependency Injection)...
【初识Spring】 Spring是一个广泛使用的Java企业级应用开发框架,它以其依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)为核心,大大简化了Java应用的开发复杂性...
- **配置数据库**:连接数据库,配置数据源,使用JPA或MyBatis进行数据操作。 - **模板引擎**:如果需要生成动态网页,可以使用Thymeleaf、Freemarker等模板引擎。 - **安全控制**:使用Spring Security进行身份...
比如,如果你想添加数据库支持,只需在`pom.xml`中引入对应的`spring-boot-starter-data-jpa`依赖,它会自动包含所有需要的JPA和数据库连接组件,如Hibernate等。 三、内嵌式Web服务器: SpringBoot支持内嵌式的Web...
ORM模块支持对象/关系映射,与JPA、JDO、Hibernate等集成;事务管理模块提供了编程和声明式事务管理的支持;Web模块则包含WebSocket、Servlet、Web MVC等,支持Web应用的开发。 **Spring的优点**在于其非侵入式设计...
01.初识 Spring Security 02.Spring Security 初体验 03.基于内存定义 Spring Security 用户 04.Spring Security 自定义表单登录 05.Spring Security 登录表单配置细节 06.Spring Security 表单登录源码 07.Spring ...
12. **JPA集成**:如果包含JPA相关内容,还可以了解Hibernate作为JPA提供者的实现细节。 提供的压缩包文件可能包含了相关的PDF文档或源码示例,通过阅读3019.pdf和3020.pdf,我们可以获取更深入的理论知识和实践...
《初识Java EE 6平台与GlassFish》是一本针对Java企业级应用开发的入门教程,旨在帮助读者理解和掌握Java EE 6平台的核心概念和技术,同时结合GlassFish服务器的使用,提供实际操作的经验。这本书是Java J2EE(Java ...
6. **JPA(Java Persistence API)**:简化了对象关系映射,使得Java对象可以直接操作数据库记录。 7. **JNDI(Java Naming and Directory Interface)**:提供查找和管理资源的服务,如数据库连接池、邮件服务器等...
4. **JPA(Java Persistence API)**:Java EE 5引入了JPA作为ORM(Object-Relational Mapping)的标准,用于管理数据库持久化。书中会解释实体、关系映射、查询语言以及事务管理。 5. **JSF(JavaServer Faces)**...
总结,"springboot-integration-examples"是一个非常实用的学习资源,无论你是初识SpringBoot,还是希望进一步提升SpringBoot的使用技巧,都能从中受益匪浅。通过深入研究和实践,你将能够熟练掌握SpringBoot与各类...