1properties配置文件
SpringBoot默认读取项目下名字为application开头的 yml yaml properties配置文件
在项目下的application.properties里修改端口号和项目上下文路径
注意,这里的每一个. 都代表一个层级
SpringBoot常见配置
查看官网文档
常见配置如下
2yml配置文件
注意,这里的每一个. 都代表一个层级 转换成yml之后,使用缩进代表层级关系
基本格式要求
① 大小写敏感
② 使用缩进代表层级关系
③ 相同的部分只出现一次
④ 注意空格
[1]普通数据类型
server:
port: 8888
[2]配置对象类型数据
person:
name: zs
age: 12
sex: 男
#或者写成json格式
person2: {name: zs,age: 19 }
[3]配置数组类型
city:
- beijing
- tianjin
- shanghai
- chongqing
#或者
city2: [beijing,tianjin,shanghai,chongqing]
如果同一个目录下,有application.yml也有application.properties,默认先读取application.properties。
如果同一个配置属性,在多个配置文件都配置了,默认使用第1个读取到的,后面读取的不覆盖前面读取到的。
配置文件存放位置
① 当前项目根目录中
② 当前项目根目录下的一个/config子目录中
③ 项目的resources即classpath根路径中
④ 项目的resources即classpath根路径下的/config目录中
配置文件存放读取优先级
a当前项目根目录下的一个/config子目录中(最高)
config/application.properties
config/application.yml
b当前项目根目录中(其次)
application.properties
application.yml
c项目的resources即classpath根路径下的/config目录中(一般)
resources/config/application.properties
resources/config/application.yml
d项目的resources即classpath根路径中(最后)
resources/application.properties
resources/application.yml
3bootstrap配置文件
Spring Boot 中有两种上下文对象,一种是 bootstrap, 另外一种是 application(ServletContext), bootstrap 是应用程序的父上下文,也就是说 bootstrap 加载优先于 applicaton。bootstrap 主要用于从额外的资源来加载配置信息,还可以在本地外部配置文件中解密属性。这两个上下文共用一个环境,它是任何Spring应用程序的外部属性的来源。bootstrap 里面的属性会优先加载,它们默认也不能被本地相同配置覆盖。
bootstrap配置文件特征
①boostrap 由父 ApplicationContext 加载,比 applicaton 优先加载。
②boostrap 里面的属性不能被覆盖。
bootstrap与 application 的应用场景
application 配置文件主要用于 Spring Boot 项目的自动化配置。
bootstrap 配置文件有以下几个应用场景。
①使用 SpringCloudConfig 配置中心时,这时需要在 bootstrap 配置文件中添加连接到配置中心的配置属性来加载外部配置中心的配置信息。
②一些固定的不能被覆盖的属性。
③一些加密/解密的场景。
4SpringBoot项目结构
-- 项目名
--src
--main
--java
java代码
--resources
--public 公共资源。所有共享的内容。对外公开的内容。
--static静态资源。图片、js、css。不会被服务器解析。
--js
-- jquery.js 访问:http://ip:port/js/jquery.js
注意:该目录是SpringBoot可以直接识别的目录,会将其中的
静态资源编译到web项目中,并放到tomcat中使用。静态资源的
访问路径中无需声明static 例如:localhost:8080/a.png
--templates
FreeMarker thymeleaf 页面所在目录。
--webapp 只有当页面使用jsp时才有。
--WEB-INF
设置WEB-INF