Spring Data JPA 梳理 - JPA与“Spring、Spring Data JPA”的关系
2024-10-06 11:18:25
- JPA其实也就是java实体对象和关系型数据库建立起映射关系,通过面向对象编程的思想操作关系型数据库的规范。
Spring 框架对 JPA 提供的支持主要体现在如下几个方面:
首先,它使得 JPA 配置变得更加灵活。JPA 规范要求,配置文件必须命名为 persistence.xml,并存在于类路径下的 META-INF 目录中。该文件通常包含了初始化 JPA 引擎所需的全部信息。Spring 提供的 LocalContainerEntityManagerFactoryBean 提供了非常灵活的配置,persistence.xml 中的信息都可以在此以属性注入的方式提供。
- 其次,Spring 实现了部分在 EJB 容器环境下才具有的功能,比如对 @PersistenceContext、@PersistenceUnit 的容器注入支持。
第三,也是最具意义的,Spring 将 EntityManager 的创建与销毁、事务管理等代码抽取出来,并由其统一管理,开发者不需要关心这些,业务方法中只剩下操作领域对象的代码,事务管理和 EntityManager 创建、销毁的代码都不再需要开发者关心了。
- Spring Data JPA 框架,主要针对的就是 Spring 唯一没有简化到的业务逻辑代码,至此,开发者连仅剩的实现持久层业务逻辑的工作都省了,唯一要做的,就只是声明持久层的接口,其他都交给 Spring Data JPA 来帮你完成!
- Spring Data Jpa,是在JPA的规范下,提供了respository层(数据访问层)的实现。是对JPA的再次封装和抽象,底层还是要使用JPA的具体实现,如Hibernate JPA作为JPA规范的实现。
最新文章
- [Storm] No data flows into bolt
- BZOJ1950 : [Ceoi2006]Link
- iOS 发布遇到的问题 (转载)
- 【转】 memset()的效率以及源码分析
- iOS:app直播---原理篇
- POJ 3253 Fence Repair(优先队列,哈夫曼树,模拟)
- python文件处理
- Json序列反序列类型处理帮助类
- php基础之一
- Git服务器搭建全过程
- Java socket字节流传输的示例
- HDU 4062 Partition
- 一文让你从此告别HTTP乱码(二)Response篇
- yii2 获取从前台传过来的post数据
- javascript中数组与字符串之间的转换以及字符串的替换
- Exp4 恶意代码分析 20164302 王一帆
- 请求http页面的相关过程
- 二、volatile关键字 - 内存可见性
- [20181108]with temp as 建立临时表吗.txt
- VUE 数据请求和响应(axios)