spring boot

2021-12-17  本文已影响0人  go_2021
  1. 什么是 Spring Boot
    Spring Boot 是 Spring 开源组织下的子项目,是 Spring 组件一站式解决方案,主要是简化了使用 Spring 的难度,简省了繁重的配置提供了各种启动器,开发者能快速上手

参考:https://mp.weixin.qq.com/s/jWLcPxTg9bH3D9_7qbYbfw

  1. Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?

核心注解: @SpringBootApplication
又分为3个注解:

 @Bean
 public Map createMap(){
 context.getBean("createMap"); //获取bean 实例名就是方法名

参考:https://mp.weixin.qq.com/s/gs2zLSH6m9ijO0-pP2sr9Q
https://www.cnblogs.com/javaguide/p/springboot-auto-config.html

  1. 如何实现自动加载配置
    @EnableAutoConfiguration这个注解,起到了关键作用。
    在启动的时候会把导入包的META-INF/spring.factories路径下列出的配置类(XXXAutoConfiguration)自动装配到内存,过程中会类中的条件进行选择是否注入。其中的条件大致分为class,bean,配置3种,根据这3种是否存在选择是否注入。

参考:https://segmentfault.com/a/1190000030685746

  1. 启动流程
    spring boot启动 大致分为2步 ->SpingApplication初始化和run方法
图2.png

参考:https://mp.weixin.qq.com/s/EzSM_VK8bH2QhWX9nGQONQ
https://www.jianshu.com/p/603d125f21b3
https://www.processon.com/view/link/59812124e4b0de2518b32b6e
https://blog.nowcoder.net/n/5900dcf9c0bf463d8f6c848859f054a4?from=nowcoder_improve
https://segmentfault.com/a/1190000019560001
https://blog.csdn.net/xuan_lu/article/details/108249324?utm_source=app&app_version=5.0.1&code=app_1562916241&uLinkId=usr1mkqgl919blen

  1. Spring Boot 的核心配置文件有哪几个?它们的区别是什么?
    Spring Boot 的核心配置文件是 application 和 bootstrap 配置文件。
    application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置。
    bootstrap 配置文件优先级比较高,加载比较早。
    具体请看这篇文章《Spring Boot 核心配置文件详解》。

  2. Spring Boot 的配置文件有哪几种格式?它们有什么区别?
    application.properties中内容如下:

server.port=8080
server.servlet.context-path=elk
application.yml中内容如下:
server:
   port: 8080
   servlet:
       context-path: /elk

.yml格式的配置文件需要注意几点:
1)冒号后面要加空格;
2)缩进不能使用TAB;

  1. Spring Boot 有哪几种读取配置的方式?
 @Value("${info.address}")  
 private String address;
@ConfigurationProperties(prefix ="info")
 public class InfoConfig2{
@Autowired
private Environment env;
// 获取参数
String getProperty(String key){
     return env.getProperty(key);
}

参考:https://mp.weixin.qq.com/s/aen2PIh0ut-BSHad-Bw7hg

上一篇 下一篇

猜你喜欢

热点阅读