springboot笔记(4)多环境配置和引⽤配置⽂件中的内容
⼀. 配置⽂件格式有yml和properties.
1. yml格式因为会⾃动的将同⼀对象下的属性聚集在⼀块, 并且⽂件相对较⼩, 所以是⾸选;
2.多环境配置: 开发环境和⽣成环境都配置在同⼀yml⽂件中
如下图是我项⽬的三个配置⽂件,其中,l是启动服务时,服务器会⾃动加载的配置⽂件,⽽l代表的是开发环境的配置⽂件,l代表的是⽣产环境的配置⽂件,后两个⽂件在启动服务时,服务器不会⾃动加载,那么在不同的环境中时怎么调⽤不同的⽂件的呢?
⽅式⼀、修改配置⽂件⽅式
修改l配置⽂件,具体内容如下图:
这样,在启动服务时,服务器就会通过l⽂件去调⽤l⽂件。同理,若active: prod,那么服务在启动时,服务器就会调⽤l⽂件。也就是说,在开发环境时,只需将l配置⽂件配置为"dev",⽽⽣产环境时,只需将“dev”改为“prod”就可以了。
⽅式⼆、命令启动服务,命令中带参数⽅式(此⽅式可以没有l⽂件)
第⼀步:进⼊到项⽬⽬录下,先⽤maven对项⽬进⾏打包,会在target⽬录下⽣成项⽬的jar包
打包可以⽤右侧的moven窗⼝
第⼆步:进⼊target⽬录,执⾏命令:java -jar ⽣成的jar包--spring.profiles.active=dev
(其中的--代表条件)
项⽬就会调⽤l配置⽂件,⽽不是l, 的配置要求启动服务。同理,若是开发环境,只需将prod改为dev 即可。
⼆.  引⼊配置⽂件信息
1.@Value("${配置属性}")会⾃动获取配置⽂件的属性并赋值给变量,
spring怎么读取properties例⼦: 在配置⽂件中有属性picpath, 想在java代码中⽤这个属性;
2 @ConfigurationProperties注解获取⼤量的注解
在java代码中获取l配置⽂件中的aliyun属性下所有的属性值(111,222,333)
(1)新建包properties, 类AliyunProperty;(这⾥⽤了⼀个类单独获取aliyun配置)
(2) 添加类注解@ConfigurationProperties(profiex = "aliyun")
(3)@Component添加类到ioc容器中
(4)设置类的属性名与aliyun的属性名⼀直,
然后就可以在java代码中⽤了;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。