SpringBoot入门学习1
SpringBoot简介
SpringBoot可以更快的开发Spring应用,自动配置依赖,不用担心框架的兼容性,SpringBoot可以快速构建一个微服务单元,是整个Spring技术栈的整合,J2EE开发的一站式解决方案
目录结构
static : 静态资源(js,html,图片,视频)
templates : 模板文件(freemarker,thymeleaf,默认不支持jsp)
application.properties : springboot配置文件
SpringBoot注解
@SpringBootApplication : SpringBoot启动应用
@SpringBootConfiguration : SpringBoot配置类
@EnableAutoConfiguration : 自动配置,约定优于配置
@AutoConfigurationPackage : 自动将配置包加入扫描器{
AutoConfigurationPackages.Registrar : 该类会自动把标注
@SpringBootApplication的类的包以及子包加入扫描器
}
AutoConfigurationImportSelector : {
通过selectimports方法引入第三方依赖
}
SpringBoot如何自动引入第三方依赖
通过SpringFactoriesLoader类中的loadSpringFactories方法引入,FACTORIES_RESOURCE_LOCATION就是依赖所在的配置文件地址
Positive matches : 表示SpringBoot自动引入的依赖
Negative matches : 表述SpringBoot在此时没有引入的依赖
SpringBoot的配置文件
默认的全局配置文件:
application.properties/application.yml
yml配置格式:
server:
port: 9627
debug: true
#yml配置有多种写法:
student:
name: LeoRiver
age: 19
locations: {k: v,k: v}
phones: [v,v,v]
properties配置格式:
server.port=9627
logging.level.......等
通过前缀给对象注入值
@ConfigurationProperties(prefix="前缀")此注解可以将指定前缀的值注入给该对象
#yml方式
student:
name: LeoRiver
age: 19
#properties方式
student.name=LeoRiver
student.age=19
通过@Value标注在属性上直接注入值
@PropertySource
SpringBoot会自动加载application.properties和application.yml
如果有其他配置,需要用@PropertySource注解加载,但是@PropertySource只能加载.properties结尾的,不能加载yml
@ImportResource
SpringBoot会把Spring等配置文件自动配置好,如果自己写Spring等配置文件则需要在启动类中加上@ImportResource指定配置文件的路径(不推荐自己写Spring等配置)