idea创建工程选择maven模板
SpringBoot要求,项目要继承SpringBoot的起步依赖spring-boot-starter-parent
SpringBoot要集成SpringMVC进行Controller的开发,所以项目要导入web的启动依赖
过SpringBoot提供的引导类起步SpringBoot才可以进行访问
编写Controller
打开浏览器访问url地址为:http://localhost:8080/quick
自动配置原理:注解@SpringBootApplication
注解@SpringBootApplication的源码
@SpringBootConfiguration:等同与@Configuration,既标注该类是Spring的一个配置类
@EnableAutoConfiguration:SpringBoot自动配置功能开启
按住Ctrl点击查看注解@EnableAutoConfiguration
其中,@Import(AutoConfigurationImportSelector.class) 导入了AutoConfigurationImportSelector类
按住Ctrl点击查看AutoConfigurationImportSelector源码
其中,SpringFactoriesLoader.loadFactoryNames 方法的作用就是从META-INF/spring.factories文件中读取指定
类对应的类名称列表
spring.factories 文件中有关自动配置的配置信息如下:
上面配置文件存在大量的以Configuration为结尾的类名称,这些类就是存有自动配置信息的类,而
SpringApplication在获取这些类名后再加载
我们以ServletWebServerFactoryAutoConfiguration为例来分析源码:
其中,
@EnableConfigurationProperties(ServerProperties.class) 代表加载ServerProperties服务器配置属性类
进入ServerProperties.class源码如下:
其中,
prefix = “server” 表示SpringBoot配置文件中的前缀,SpringBoot会将配置文件中以server开始的属性映射到该类
的字段中。映射关系如下:
【创建SpringBoot工程模板】
于 2021-01-11 20:11:18 首次发布