二、springboot配置文件
创建 Spring Boot 项目默认会在 src/main/resources 目录下生成一个全局配置文件 application.properties 。全局配置文件的作用是对一些默认配置进行修改。
idea中,为了我们本地方便开发测试,我们在此处创建一个config目录,然后把application.properties放进去,项目正常运行。jar包会自动生成在target目录下。
在SpringBoot框架中,推荐使用配置类的方式向容器中添加和配置组件 在SpringBoot框架中,通常使用@Configuration注解定义一个配置类,SpringBoot会自动扫描和识别配置类,从而替换传统Spring框架中的XML配置文件。
我们在做微服务项目时候会引入spring cloud框架,对于配置文件我们就会通过spring cloud config来配置,实现线上环境动态修改配置文件属性而不需要重新打jar 包。
首先,在SpringBoot中,有两种配置文件的方式。一种是application.properties,另一种application.yaml(或者是application.yml)。
SpringBoot运行原理
springboot-boot-starter-xxx:spring-boot的场景启动器 spring-boot-starter-web:帮我们导入了web模块正常运行所依赖的组件。
springboot帮我们做的两件事,一个是通过starter引入我们需要的框架,starter负责引入自己的依赖;另一个是通过autoconfigure生效一些默认的配置,简化我们的使用,这一步是通过spring.factories中定义的配置类实现的。
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。
springboot快速入门及@SpringBootApplication注解分析
1、首先我们分析的就是入口类 Application 的启动注解 @SpringBootApplication ,进入源码:发现 @SpringBootApplication 是一个复合注解,包括 @ComponentScan ,和 @SpringBootConfiguration , @EnableAutoConfiguration 。
2、可以看到SpringBootConfiguration 等同于使用了@Configuration EnableAutoConfiguration会根据classpath以及定义的Bean来帮你加载你想要的bean。 可以通过spring.autoconfigure.exclude来排除掉不想自动加载的bean。
3、开启 Spring 应用上下文的自动配置功能,它试图猜测你可能需要配置的 bean 信息。表示包含该注解的类所在的包应该在 AutoConfigurationPackages 中注册。
4、META-INF/spring.factories配置文件。然后,将其中org.springframework.boot.autoconfigure.EnableAutoConfiguration key对应的配置项加载到spring容器。