当前位置: 首页 > news >正文

SpringBoot2:依赖管理与自动配置

一、依赖管理

什么叫依赖管理?
我们做过Maven项目的,都知道pom.xml的作用。里面配置了一大堆的包依赖。
所以,SpringBoot的依赖管理,意思就是,我们用SpringBoot开发web应用,那么,相关的依赖包,SpringBoot官方就帮我们配置好了。
我们导入SpringBoot的相关jar包,通过Maven技术,对应的版本包通通帮我们引入了。
无需我们自己在去引入。

四部分去理解
1、父项目做依赖管理
2、开发导入starter场景启动器

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>

3、无需关注版本号,springboot官方jar包已经对应好版本
4、可以修改默认版本号

二、自动配置

SpringBoot所有的自动配置功能都在 spring-boot-autoconfigure 包里面
各种配置拥有默认值
按需加载所有自动配置项
比如:
自动配好Tomcat
自动配好SpringMVC
在这里插入图片描述
自动配好Web常见功能
这块的验证,我们需要拿到springbootIOC容器,然后,获取内部组件打印即可。

	public static void main(String[] args) {//1、获取IOC容器ConfigurableApplicationContext run = SpringApplication.run(Boot01TestApplication.class, args);//2、查看容器内的所有组件String[] names = run.getBeanDefinitionNames();for (String name : names) {System.out.println(name);}}

结果
dispatcherServlet组件,拦截请求
在这里插入图片描述
如:characterEncodingFilter,字符编码处理组件
如:multipartResolver,文件上传组件
自动配好默认的包结构
主程序(即@SpringBootApplication注解的类)所在包及其所有子包里面的组件都会被默认扫描到
自定义包扫描路径: @SpringBootApplication(scanBasePackages="com.test")


http://www.mrgr.cn/news/12024.html

相关文章:

  • 【网络安全】XML-RPC漏洞之盲SSRF
  • 一篇精通Ansible之playbook
  • P2709 小B的询问
  • 知识图谱问答召回机制-GraphRAG
  • AIGC:Flux.1 NF4 使用 diffusers 推理
  • 观察者模式(Observer Pattern)
  • xss-labs通关攻略 11-15关
  • 代码随想录 -- 哈希表 -- 四数相加 II
  • 使用canal增量同步ES索引库数据
  • 主场竞争,安踏把背影留给耐克
  • centos7安装Kafka单节点环境部署三-安装Logstash
  • mysql 导入excel文件 navicate
  • Python 爬虫 示例
  • 如何使用Redis实现乐观锁?
  • 已解决org.xml.sax.SAXNotRecognizedException异常的正确解决方法,亲测有效!!!
  • 惠州本地专业的企业管理咨询公司
  • ansible --limit 在指定主机执行任务
  • 手机号码归属地查询如何用PHP进行调用
  • 算法-有效的字母异位词
  • 算法训练第24天|122.买卖股票的最佳时机II|55. 跳跃游戏|45.跳跃游戏II|1005.K次取反后最大化的数组和