一 点睛

Spring Boot对Spring Data JPA的自动配置放置在如下路径:

二 源码分析

1 JpaRepositoriesAutoConfiguration类分析

@Configuration

@ConditionalOnBean(DataSource.class)

@ConditionalOnClass(JpaRepository.class)

@ConditionalOnMissingBean({ JpaRepositoryFactoryBean.class,

JpaRepositoryConfigExtension.class })

@ConditionalOnProperty(prefix = "spring.data.jpa.repositories", name = "enabled", havingValue = "true", matchIfMissing = true)

@Import(JpaRepositoriesAutoConfigureRegistrar.class)

//JpaRepositoriesAutoConfiguration依赖于HibernateJpaAutoConfiguration配置

@AutoConfigureAfter(HibernateJpaAutoConfiguration.class)

public class JpaRepositoriesAutoConfiguration {

}

2 JpaRepositoriesAutoConfigureRegistrar类分析

class JpaRepositoriesAutoConfigureRegistrar

extends AbstractRepositoryConfigurationSourceSupport {

@Override

protected Class extends Annotation> getAnnotation() {

return EnableJpaRepositories.class;

}

@Override

protected Class> getConfiguration() {

return EnableJpaRepositoriesConfiguration.class;

}

@Override

protected RepositoryConfigurationExtension getRepositoryConfigurationExtension() {

return new JpaRepositoryConfigExtension();

}

//自动开启了Spring Data JPA的支持,所以无需在配置类中显示声明@EnableJpaRepositories

@EnableJpaRepositories

private static class EnableJpaRepositoriesConfiguration {

}

}

三 Spring下使用Spring Data JPA

在Spring Boot下使用Spring Data JPA,在项目的Maven依赖里添加spring-boot-starter-data-jpa,然后只需定义DataSource、实体类和数据访问层,并在需要使用数据访问的地方注入数据访问层的Bean即可,无需任何额外配置。

datav本地部署 java,Spring Boot对Spring Data JPA的自动配置相关推荐

  1. Spring Boot基础入门+内置tomcat+自动配置浅谈分析

    SpringBoot目录 一.Spring Boot概述 1.1 什么是Spring Boot? 1.2 Spring Boot出生的时代背景 1.2 SpringBoot的优点 1).内嵌Tomca ...

  2. Spring Boot(1) 入门、自动配置

    Hello,Spring Boot 1.创建一个普通的maven项目 2.pom.xml引入依赖 <parent><groupId>org.springframework.bo ...

  3. 《Spring Boot官方文档》16. 自动配置

    16. 自动配置 Spring Boot的自动配置会尝试根据你添加进来的jar依赖来自动配置你的Spring应用.例如,如果HSQLDB在你的classpath路径上,你没有手动配置任何数据库连接实体 ...

  4. Spring Boot : Spring Boot 开启 debug=true 查看哪些自动配置加载了

    1.美图 2.概述 先看 自动配置原理 这里有个疑问?我们不能点开每个类,看看SpringBoot之Bean之条件注入@Condition 每个类上的注入条件是什么,而去人工的判断这个配置是否加载了. ...

  5. 为什么Java大神,都在看Spring Boot和Spring Cloud的书?

    2019独角兽企业重金招聘Python工程师标准>>> 如果你是一名Java开发人员,并且最近正打算学习Spring Boot和Spring Cloud框架并寻找一些关于它们的最好的 ...

  6. 带有Spring Boot和Spring Cloud的Java微服务

    朋友不允许朋友写用户身份验证. 厌倦了管理自己的用户? 立即尝试Okta的API和Java SDK. 在几分钟之内即可对任何应用程序中的用户进行身份验证,管理和保护. Java是开发微服务架构时使用的 ...

  7. java小马哥百度网盘_小马哥spring boot和spring cloud系列

    资源内容: 小马哥spring boot和spring cloud系列|____小马哥 Java 微服务实践 - Spring Boot 系列          |____pptx           ...

  8. 基于Spring Boot和Spring Cloud实现微服务架构学习--转

    原文地址:http://blog.csdn.net/enweitech/article/details/52582918 看了几周spring相关框架的书籍和官方demo,是时候开始总结下这中间的学习 ...

  9. 基于 Spring Boot 和 Spring Cloud 实现微服务架构

    前言 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道.因为网上流传的多数资料是官网翻译而来,很多描述的重点也都偏向于作者自身碰到的问题,这样就很容易让你理解和操作出现偏差 ...

最新文章

  1. 第8期Datawhale组队学习计划
  2. axios get怎么还会显示跨域_在Vue中如何使用axios跨域访问数据
  3. python中itertools groupby函数是干嘛的_Python-如何使用itertools.groupby()?
  4. linux制作openssl rpm,CentOS 7 定制 OpenSSL RPM 包
  5. matlab hashset,MATLAB集合操作
  6. Mybatis+mysql动态分页查询数据案例——房屋信息的接口(IHouseDao)
  7. linux useradd 数字,详解linux useradd用户组合权限管理等
  8. Java 字符串常用操作(比较、查找位置、删除字符、替换字符串、反向输出、是否存在、分割字符串、大小写转换,区域比较、拼接字符串)
  9. 迭代器 in C++
  10. Python出现AttributeError: module ‘tkinter‘ has no attribute ‘messagebox‘,已解决
  11. Android开源框架Universal-Image-Loader完全解析(三)
  12. JQUERY弹层|图片滚动|插件开发|上传 相关收藏
  13. Object C中创建线程的方法有NSThread,GCD, NSOperation
  14. HTTP 长连接 使用场景
  15. SPU和SKU都是什么意思
  16. 师傅!华为eNSP报错啦!别担心,一篇文章教会你
  17. 面试准备(常见问题)
  18. 【C++】逆序函数reverse()
  19. 【转帖】1588介绍
  20. delmia机器人示教01

热门文章

  1. dotNET Core实现分布式环境下的流水号唯一
  2. 求斐波那契数列第n位的几种实现方式及性能对比
  3. Asp.Net Core 轻松学-经常使用异步的你,可能需要看看这个文章
  4. c# 弹性和瞬态故障处理库Polly 学习
  5. 微软发布Azure Service Fabric Mesh公开预览版
  6. 树莓派3B上部署运行.net core 2程序
  7. Metrics, tracing 和 logging 的关系
  8. 卧槽!VS Code 上竟然也能画流程图了???
  9. Android之elevation实现阴影效果
  10. Android之app作为服务器解决跨域问题