spring boot(二)配置資訊的讀取
前言
spring boot配置資訊的讀取相比spring來說比較容易,甚至都不需要特意的去寫什麼配置讀取工具類(當然在實際工作中,根據不同需要還是會寫不同的工具類)。
自定義屬性與載入
1、編寫配置檔案
server.port = 8080
com.learn.liman.work=coder
com.learn.liman.company=xwbank
com.learn.liman.job=${com.learn.liman.work} in ${com.learn.liman.company}
其中的server.port就是配置的訪問埠,這個屬性是spring boot中自帶的屬性。
後面編寫的兩個屬性是測試屬性,第三個屬性用到了屬性之間的讀取。
2、properties資訊對應的例項物件
package com.learn.component;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class BlogProperties {
@Value("${com.learn.liman.work}")
private String work;
@Value("${com.learn.liman.company}")
private String company;
@Value("${com.learn.liman.job}")
private String job;
public String getWork() {
return work;
}
public void setWork(String work) {
this.work = work;
}
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
}
注意打上@Component標籤,在每一個屬性用@Value上對應相應的屬性值
3、測試
package com.learn.springboot;
import static org.hamcrest.Matchers.equalTo;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import com.learn.SpringbootApplication;
import com.learn.component.BlogProperties;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = SpringbootApplication.class)
@WebAppConfiguration
public class SpringbootApplicationTests {
@Autowired
private BlogProperties blogProperties;
@Test
public void getProperties() {
Assert.assertEquals("xwbank", blogProperties.getCompany());
Assert.assertEquals("coder",blogProperties.getWork());
Assert.assertEquals("coder in xwbank",blogProperties.getJob());
}
}
多環境配置
在實際開發spring boot應用的時候,通常一套程式會安裝到幾個不同的環境,在一些網際網路公司開始採用Apollo來對配置資訊進行管理,在spring boot中其實也支援多環境的配置
1、編寫多個配置檔案
spring boot中針對多個配置檔案,命名需要滿足application-{profile}.properties的格式,其中的{profile}就是標識的使用環境,例如以下方式:
application-dev.properties
application-test.properties
application-prod.properties
分別對應開發、測試和生產環境。
這裡打算通過配置不同環境的埠,來實現不同環境的切換。
application.properties檔案中通過如下屬性實現配置的切換:(目前指定的是測試環境)
spring.profiles.active=test
2、測試
這裡的測試非常簡單,只需要修改application.properties中的配置,然後在不同埠下訪問即可
相關文章
- spring-boot-route(二)讀取配置檔案的幾種方式Springboot
- spring boot學習(6)— 配置資訊及其讀取優先順序Spring Boot
- spring boot學習(7)— 配置資訊的獲取方式Spring Boot
- Spring Boot 讀取配置內容的三種方式Spring Boot
- Spring Boot 2 實戰:常用讀取配置的方式Spring Boot
- Spring Boot讀取配置檔案的幾種方式Spring Boot
- 精進 Spring Boot 03:Spring Boot 的配置檔案和配置管理,以及用三種方式讀取配置檔案Spring Boot
- Spring boot學習(二) Spring boot基礎配置Spring Boot
- Spring boot學習(八)Spring boot配置ehcache快取框架Spring Boot快取框架
- Spring Boot 配置中的敏感資訊如何保護?Spring Boot
- Spring-讀取配置Spring
- [轉]Spring Boot讀取配置檔案常用方式[強烈建議閱讀]Spring Boot
- spring boot 獲取客戶端ip資訊Spring Boot客戶端
- SpringBoot 複雜配置資訊讀取Spring Boot
- Spring Boot + Mybatis + Spring MVC環境配置(二):Mybatis Generator配置Spring BootMyBatisMVC
- spring-boot-route(十一)資料庫配置資訊加密Springboot資料庫加密
- Spring Boot:Spring Boot配置MybatisSpring BootMyBatis
- Spring Boot:Spring Boot配置SwaggerSpring BootSwagger
- spring cloud+spring boot 電子商務spring boot獲取配置檔案的屬性CloudSpring Boot
- Spring Boot + Redis 快取方案深度解讀Spring BootRedis快取
- Spring boot 讀取properties檔案的四種方式Spring Boot
- Spring Boot讀取外部配置檔案失敗,原因絕對出乎你意料Spring Boot
- Spring Boot加密應用配置檔案敏感資訊(jasypt)Spring Boot加密
- Spring Boot & 配置Spring Boot
- Spring Boot 入門系列(二十五)讀取配置檔案的幾種方式詳解!Spring Boot
- Spring Boot EL獲取配置檔案中的值的方式Spring Boot
- Spring Boot自動配置原理與實踐(二)Spring Boot
- spring boot 配置 JPASpring Boot
- Spring Boot核心配置Spring Boot
- Spring Boot + Mybatis 多資料來源配置實現讀寫分離Spring BootMyBatis
- Spring Boot 靜態資源配置 A卷Spring Boot
- Spring Boot 多資料來源配置Spring Boot
- Spring Boot 配置多資料來源Spring Boot
- Spring boot+Swagger配置無侵入式Restful介面(二)Spring BootSwaggerREST
- Spring Boot第二彈,配置檔案怎麼造?Spring Boot
- Spring Boot 核心(二)Spring Boot
- Spring Boot入門(二):使用Profile實現多環境配置管理&獲取配置檔案值的兩種方式Spring Boot
- Spring Boot中的 6 種API請求引數讀取方式Spring BootAPI