简介,是spring项目下的子项目,是spring组件一站式解决方案,解决了spring配置繁琐的缺点,并且提供了许多启动器,可以更快上手。
1、springboot启动器,包含44个,其中starter是核心启动器,包含了自动配置、日志和YAML
2、优点
1)独立运行:内置了tomcat等容器,可直接打包成可执行jar包,而不用先打war包,再部署到容器上执行
2)简化配置:Springboot可以根据当前类路径下的类、jar包来配置bean,如添加一个spring-boot-starter-web启动器就能拥有web功能,无需多余的配置
3)无代码生成和xml配置:使用条件注解实现与xml配置相同的功能
4)应用监控:Actuator启动器可以通过暴露端点路由,用来输出应用中的诸多端点信息
3、核心配置文件有哪些,有什么区别?
有bootstrap和application 两种(.yml 或者 .properties)
bootstrap是应用程序的父上下文,也就是说它的加载优先于application,bootstrap主要用来从额外资源加载配置信息,默认也不能被本地相同配置覆盖,还可以在本地外部配置文件中解密属性,应用到的场景有:(不能被覆盖、需加密解密的场景、spring cloud配置时需要bootstrap配置以加载外部配置中心的资源)
4、核心注解有哪些,分别是什么功能?
1)启动类注解@SpringBootApplication
2)@SpringBootConfiguration,继承自@Configuration,二者功能也一致,标注当前类是配置类
3)@EnableAutoConfiguration,打开自动配置的功能,@SpringbootApplication相当于@Configuration,@EnableAutoConfiguration和 @ComponentScan
4) @ComponentScan,spring组件扫描
5、如何理解starter?
相当于一个启动器,包含了许多项目依赖的jar包
6、如何在项目启动时运行特定的代码?
可以使用applicationrunner
7、如何读取配置?
可以使用@PropertySource@Value,@Environment, @ConfigurationProperties 来绑定变量
8、springboot实现热部署的方式
1)Spring Loaded
2)Spring-boot-devtools