程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-06(2)

SpringBoot自动配置原理

发布于2021-03-13 13:39     阅读(1269)     评论(0)     点赞(9)     收藏(3)


父项目依赖管理

  首先我们来分析一下SpringBoot的pom文件当中的父项目parent:

  其实每一个SpringBoot工程都会有这样的一个父项目,这个父项目的作用是什么呢?前面我们学习过的maven的父项目都是用来作为依赖管理的,父项目当中可能会声明许多依赖,子项目只需要继承父项目即可,子项目以后写依赖就不需要版本号了。这个父项目还有一个继承的最高级的父项目:

鼠标点进去我们会发现,我们开发当中需要用到的几乎所有的jar包的所有版本都在里面:

假设我们需要使用自己想用的某个版本的话,比如对于mysql的版本我们想要自定义,我们就可以在pom文件当中自定义设置mysql的属性:
第一步:查看spring-boot-dependencies里面规定当前以来的版本用的key;
第二部:在当前项目里面重写配置即可。

<properties>
        <mysql.version>5.1.43</mysql.version>
</properties>

starter场景启动器

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
      <version>2.3.4.RELEASE</version>
      <scope>compile</scope>
    </dependency>

自动配置

  • 自动配置好Tomcat
  • 自动配置好SpringMVC
  • 自动配置好web常见功能,如:字符编码问题
  • 默认的包结构
    主程序所在包及其下面的所有子包里面的组件都会被默认扫描进来;
    无需配置以前的包扫描配置;
    如果想要改变扫描路径,可以使用@SpringBootApplication(scanBasePackages = “包路径”)。
  • 各种配置拥有默认值
    默认配置最终都是映射到MultipartProperties;
    配置文件的值最终会绑定到每个类上,这个类会在容器中创建对象。
  • 按需加载所有自动配置项
    pom文件当中引入了哪个开发场景(starter)就加载哪个场景的配置;
    SpringBoot所有的自动配置功能都在spring-boot-autoconfigure里面。

原文链接:https://blog.csdn.net/pf6668/article/details/114699599



所属网站分类: 技术文章 > 博客

作者:哦哦好吧

链接:http://www.javaheidong.com/blog/article/114252/a1980b8e761bbc5ac9e5/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

9 0
收藏该文
已收藏

评论内容:(最多支持255个字符)