微服务,微架构[五]之springboot读取properties文件
介紹
? ? ?很多項(xiàng)目中都會有配置文件,比如說配置 數(shù)據(jù)庫的連接項(xiàng)目常量定義等等參數(shù)配置,那么這些參數(shù)在項(xiàng)目啟動的時(shí)候就會被讀到指定的容器中,可供項(xiàng)目初始化將必要的對象都初始化完成,如果參數(shù)配置錯(cuò)誤或參數(shù)沒有定義,項(xiàng)目在啟動的時(shí)候就會相應(yīng)的報(bào)錯(cuò),提示某某參數(shù)沒有定義或者不對,今天我給大家介紹一下springboot如何讀取這些初始化參數(shù),讓項(xiàng)目啟動時(shí)候能夠自動的加載,并且應(yīng)用到我們的項(xiàng)目中。
一、spring boot 默認(rèn)定義
默認(rèn)參數(shù)文件名稱為 ?application.properties 或者 application.yaml ? ,這兩種格式選其中任意一種可以作為項(xiàng)目啟動的配置文件,兩種格式有所不同
? ? ?properties 格式 ?my.web.name=eshengtai ?類似鍵值對的方式
? ? ?yaml 格式 ??
? ? ? ? ? ? ? my:
? ? ? ? ? ? ? ? ? ? web:
? ? ? ? ? ? ? ? ? ? ? ? ? name:eshengtai ?
當(dāng)然也可以自定義配置文件,作為項(xiàng)目的其他配置參數(shù)文件,比如 ?redis.properties,dataSource.properties可以單獨(dú)定義配置文件,讓springboot在啟動時(shí)幫我們加載,在程序中可以方便的使用
二、讀取配置文件
? ? 1、讀取application.properties配置文件中,自定義的參數(shù)
project.name=eshengtai
project.url=www.eshengtai.net
? ? ?讀取參數(shù)自定義內(nèi)容
/*** 讀取application properties文件內(nèi)容* @author wolf.yansl**/ @Component public class ApplicationProperties {@Value("${project.name}")private String name;@Value("${project.url}")private String url;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}}2、讀取自定義properties文件,讀取自定義參數(shù),eshengtai.properties
spring.boot=boot
spring.url=spring.io
? ? ? 讀取參數(shù)定義內(nèi)容
/*** 讀取自定義配置文件,eshengtai.properties* @author wolf.yansl**/ @Component @PropertySource("classpath:eshengtai.properties") public class EShengTaiProperties {@Value("${spring.boot}")private String springName;@Value("${spring.url}")private String url;public String getSpringName() {return springName;}public void setSpringName(String springName) {this.springName = springName;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;} } 3、動態(tài)切換配置文件properties文件,在不同的開發(fā)環(huán)境下,如何可以達(dá)到,只需要修改參數(shù)就可以動態(tài)讀取不同的參數(shù)文件,從而方便快捷的使用properties的內(nèi)容? ? 配置文件有4個(gè)
application-dev.properties? 開發(fā)環(huán)境 ?,server.port=1111服務(wù)器端口1111
application-prod.properties?正式環(huán)境?,server.port=2222服務(wù)器端口2222
application-test.properties? 測試環(huán)境?,server.port=3333服務(wù)器端口3333
application.properties? 主要啟動配置文件,配置切換啟動讀哪個(gè)文件初始化環(huán)境?spring.profiles.active 動態(tài)切換讀取配置文件,修改服務(wù)器的訪問端口變化,測試
spring.profiles.active=dev ? ?#springboot啟動讀取?application-dev.properties,并且訪問端口為1111
spring.profiles.active=prod?? ?#springboot啟動讀取?application-prod.properties,并且訪問端口為2222
spring.profiles.active=test? ?#springboot啟動讀取?application-.propertiestt,并且訪問端口為3333
總結(jié)
以上是生活随笔為你收集整理的微服务,微架构[五]之springboot读取properties文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android自己定义组件系列【6】——
- 下一篇: Shiro快速入门 —— 9.freem