Spring Boot学习(3)

自动配置原理

一.依赖管理

  • SpringBoot使用了父项目做为项目管理
XML
依赖管理
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.4.RELEASE</version>
</parent>他的父项目<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.3.4.RELEASE</version></parent>几乎声明了所有开发中常用的依赖的版本号,自动版本仲裁机制
  • 开发只需要导入starter场景启动器(Starter就是一个包含了若干个坐标定义的pom管理文件, 即包含了若干个依赖的信息)
XML
1、见到很多 spring-boot-starter-* : *就某种场景
2、只要引入starter,这个场景的所有常规需要的依赖我们都自动引入
3、SpringBoot所有支持的场景
https://docs.spring.io/spring-boot/docs/current/reference/html/using-spring-boot.html#using-boot-starter
4、见到的  *-spring-boot-starter: 第三方为我们提供的简化开发的场景启动器。
5、所有场景启动器最底层的依赖
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><version>2.3.4.RELEASE</version><scope>compile</scope>
</dependency>
  • 无需关注版本号,自动版本仲裁

1、引入依赖默认都可以不写版本
2、引入非版本仲裁的jar,要写版本号。

修改默认版本号 是使用依赖覆盖

XML
1、查看spring-boot-dependencies里面规定当前依赖的版本 用的 key。
2、在当前项目里面重写配置<properties><mysql.version>5.1.43</mysql.version></properties>
也可以直接在pom.xml中重写依赖来覆盖
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.27</version></dependency>

之所以在配置了< parent>之后不需要填写版本号 是因为 < parent>中使用了< dependencyManagement>管理

注意:
  1. 当导入一个Starter时又想导入一些其他技术 又不想直接导入其他的Starter 可以直接导入该技术的依赖 而且只需要写GAV中的GA而不需要写V 但是如果< Parent>中没有该依赖时 就需要完整写上GAV

Spring Boot学习(3)相关推荐

  1. Spring Boot学习笔记-实践建言

    2019独角兽企业重金招聘Python工程师标准>>> 本文延续<Spring Boot学习笔记-快速示例>,从开发指南中摘出一些实践经验可供参考.这也是笔者看到的眼前一 ...

  2. 八个开源的 Spring Boot 学习资源,你值得拥有

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:什么?你还在使用fastjson,性能太差了个人原创+1博客:点击前往,查看更多 转载自:牧马小子 Spring ...

  3. Spring Boot学习笔记-进阶(3)

    文章目录 Spring Boot学习笔记-进阶(3) 一.Spring Boot与缓存 二.Spring Boot与消息 三.Spring Boot与检索 四.Spring Boot与任务 异步任务 ...

  4. Spring Boot学习笔记-基础(2)

    Spring Boot学习笔记-基础(2) Spring Boot 优点: – 快速创建独立运行的Spring项目以及与主流框架集成 – 使用嵌入式的Servlet容器,应用无需打成WAR包 – st ...

  5. Spring Boot学习笔记(1)

    文章目录 Spring Boot学习笔记(1) Spring Boot 整合 JSP Spring Boot HTML Thymeleaf 常用语法 Spring Boot 数据校验 Spring B ...

  6. Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能

    Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能 在学习笔记01里,我们利用跨域打通了前端的Vue与后端的Spring Boot,实现了用户登录功能,但是后台的登录控制器在 ...

  7. Vue + Spring Boot 学习笔记01:实现用户登录功能

    Vue + Spring Boot 学习笔记01:实现用户登录功能 一.创建后端Spring Boot项目Book Management 二.创建前端Vue项目bm-vue 三.修改后端项目Book ...

  8. Spring Boot学习总结(16)——为什么说Java程序员到了必须掌握Spring boot的时候了?

    分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!点击浏览教程 Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热, ...

  9. spring boot 学习之五(日志配置)

    想直接看这里的我建议先看了我的spring boot 学习之四.因为日志的配置要用到properties. 先了解一下springBoot的日志系统然后再进行配置. springboot默认采用的是s ...

  10. Spring Boot学习——统一异常处理

    Spring Boot学习--统一异常处理 参考文章: (1)Spring Boot学习--统一异常处理 (2)https://www.cnblogs.com/aston/p/7258834.html ...

最新文章

  1. Java Socket NIO
  2. SpringSecurity SecurityContextHolderSecurityContext
  3. java实现数据结构-堆排序
  4. 拷贝data/data/包名/files文件记下所有文件及文件夹到本地sdcard根目录teddyData_files文件夹下...
  5. ASP.NET MVC 5 默认模板的JS和CSS 是怎么加载的?
  6. JTAG Pin脚定义及要求
  7. 基于微信小程序评选投票系统 开题报告
  8. deepin 安装最新snap商店
  9. 实战 | 用 Python 选股票,据说可以多挣个20%
  10. 如何将域名指向本地服务器
  11. 2018 ISCC re\web\misc WP
  12. QT pro中加入文件拷贝方法
  13. 计算机科班与培训开发编程的区别在哪里?
  14. 工业窑炉烟气SCR脱硝改造
  15. 【夏目鬼鬼分享】StringBoot整合RabbitMQ,使用Direct、Fanout、Topic三种模式
  16. c语言重新定义网络体系结构,基于Internet的C语言疑难解答系统论文.doc
  17. 这里有一个“天梯排行榜”,来看看你在哪一级?
  18. 1971旗舰cpu intel_最强CPU诞生:Intel正式发布Xeon E7 v4系列处理器 - IT之家
  19. Trying to access array offset on value of type null
  20. 黑莓为何放弃治疗 已无人可用

热门文章

  1. 计算机管理施工中的应用,计算机技术在施工管理中的应用.doc
  2. DLF + DDI 一站式数据湖构建与分析最佳实践
  3. 找程序员做老公的十大好处
  4. 3155: Preprefix sum
  5. 【CTF】记一次ctf的RE题《pyre》的writeup
  6. Expensify与Grab合作,为东南亚商务旅行者提供收据追踪自动化
  7. UC浏览器梁延俊:移动浏览器HTML5之路
  8. SVG的座标变换transform
  9. const verify = ref(null)为什么是null
  10. 加号和减号在一起怎么读_“+”加号(正号),“-”减号(负号)