* 自动配置
1.自动配置好TomCat
> spring-boot-starter-web 中自动引入了TomCat所需依赖,并进行了自动配置
- 引入TomCat依赖
- 配置Tomcat
2.自动配置好SpringMVC
> spring-boot-starter-web 中自动引入了SpringMVC所需依赖,并进行了自动配置
3.默认扫描包结构
> 主程序所在包及其下以下的所有包都会被扫描
> 如果主程序想扫描主程序不包含的包,那么也可以执行扫描的包结构 scanBasePackages = "com.shi"
@SpringBootApplication(scanBasePackages = "com.shi")
public class MainApplication {
public static void main(String[] args) {}
}
4.自动配置web开发常见应用,如字符编码问题
5.各种配置都自动配置了默认值,也可以自行更改所需配置.
> 这些自动配置的默认值,最终都是映射到某一个类中的,这个类会在容器中创建对象
6.按需加载所有自动配置项
> 需要哪个场景就会配置哪些依赖
* 查看SpringBoot自动配置了哪些组件
/**
* 主程序类
* @SpringBootApplication: 这是一个SpringBoot应用
*/
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
//返回IOC容器
ConfigurableApplicationContext context = SpringApplication.run(MainApplication.class,args);
//查看容器中的组件
String[] names = context.getBeanDefinitionNames();
for (String name : names) {
System.out.println(name);
}
}
}
原文:https://www.cnblogs.com/szqengr/p/14801375.html