Spring boot的配置
Spring boot 之 文件结构和配置文件
文件结构
这是我从https://start.spring.io/中下来的文件夹,其中的文件夹里的文件结构为:
demo:
是项目名称;
src/main/java:
此目录是放置所有java文件的(源代码文件)
src/main/resources:
此目录是放置所有的配置文件,页面文件,静态资源文件,如果需要静态主页,直接在resources/static/
下放入一个index.html
即可。
src/main/resources/static:
此目录是静态资源文件目录,在这个目录中的所有文件将可以被直接访问,如果没有这个文件夹可自行创建;
src/main/resources/public:
此目录的作用和src/main/resources/static
目录一样.
src/main/resources/templates:此目录用来放置视图模板,Spring会对Thymeleaf、Freemarker、Groovy和mustache四种模板进行自动配置.
配置文件
1.Spring boot的配置文件有两种文件格式:application.properties和是application.yml,Spring boot官方下来的文件格式是application.properties
Spring boot 会自动在src/main/resource/目录下找到配置文件,找到后将应用配置,否则使用默认值
properties配置文件的优先级更高
application.properties的配置文件的书写格式:
spring.profiles.active=dev
spring.datasource.data-username=root
spring.datasource.data-password=root
application.yml的配置文件的书写格式:
spring:
profiles:
active: prod
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test
并没有要求限制必须使用哪种文件格式
2.在项目中配置多套环境的配置(以下使用application.properties)
(1).再进行配置管理策略中:代码的开发到测试要经过各种环境的测试,开发环境,测试环境,生产环境,各种环境的配置都不同,所以我们可以把每个环境的参数配置到properties文件中,这样想用到哪种环境时只需要在主配置文件中将配置文件写上就好:
spring.profiles.active=prod
在主文件中就会加载的配置文件是application-prod.properties,
(2)不同的环境有不同的服务端口
在这三个文件均都设置不同的server.port属性
application-dev.properties:开发环境,设置为1111
application-test.properties:测试环境,设置为2222
application-prod.properties:生产环境,设置为3333
(3)启动不同的配置加载
java-jar xxx.jar,默认的开发环境(dev)
java-jar xxx.jar --spring.profiles.active=prod,生产环境(prod)
(4).总结
如下总结多环境的配置思路:
application.properties中配置通用内容,并设置spring.profiles.active=dev,以开发环境为默认配置
application-{profile}.properties中配置各个环境不同的内容
通过java -jar xxx.jar --spring.profiles.active={}方式去激活不同环境的配置