springboot 使用yml配置文件自定義屬性的操作代碼
springboot 使用yml配置文件自定義屬性
springboot 中在application.yml文件里自定義屬性值,配合@Value注解可以在代碼中直接取到相應的值,如在application.yml中添加
mqtt: serverURI: tcp://192.168.125.250:1939 topic:
在代碼中可以用
@Value("${mqtt.topic}")
private String topic ;
@Value("${mqtt.serverURI}")
private String serverURI ;取到相應的值;
如果java代碼里的屬性值是靜態(tài)的,用上面的方式獲取不到值,要使用set方法,如:
private static String username ;
private static String password ;
@Value("${yunfei.username}")
public void setUsername(String username) {
HttpCilent.username = username;
}
@Value("${yunfei.password}")
public void setPassword(String password) {
HttpCilent.password = password;
}set方法不能是靜態(tài)的,否則取不到值。
ps:@Value 注解包是
org.springframework.beans.factory.annotation.Value;
要取屬性值的對象必須注入到spring中,否則也取不到值
擴展:
SpringBoot-屬性配置yaml自定義屬性和值
SpringBoot-屬性配置yaml自定義屬性和值
在SpringBoot中yml/yaml文件可以自定義一些屬性,以供注入給自定義bean對象的屬性。主要通過空格和層次來實現(xiàn),類似于python代碼。
以下是一個Person類的yml文件:
person:
name: rayfoo
sex: man
age: 18
hobby: 1,2,3
listPro:
- val1
- val2
- val3
listMapPro:
- key1: val1
key2: val2
- key1: val1
key2: val2
car:
id: 01
color: red
price: 199999.99下面是該類的Java代碼:
packagecn.rayfoo.bean;
?
importlombok.Data;
importorg.springframework.boot.context.properties.ConfigurationProperties;
?
importjava.util.List;
importjava.util.Map;
?
/**
* @author 張瑞豐
* @description
* @date 2019/11/8
*/
@Data
@ConfigurationProperties(prefix="person")
publicclassPerson{
?
privateStringname;
privateStringsex;
privateIntegerage;
privateString[] hobby;
privateList<String>listPro;
privateList<Map<String,Object>>listMapPro;
privateCarcar;
?
}下面是其關聯(lián)的car類
packagecn.rayfoo.bean;
?
importlombok.Data;
?
/**
* @author 張瑞豐
* @description
* @date 2019/11/8
*/
@Data
publicclassCar{
privateIntegerid;
privateStringcolor;
privateDoubleprice;
}
?到此這篇關于springboot 使用yml配置文件自定義屬性的文章就介紹到這了,更多相關springboot 配置文件自定義屬性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Java Mybatis框架多表操作與注解開發(fā)詳解分析
MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲過程以及高級映射。MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數(shù)和獲取結(jié)果集的工作。MyBatis 可以通過簡單的 XML 或注解來配置和映射原始類型、接口和 Java POJO為數(shù)據(jù)庫中的記錄2021-10-10
Spring?Boot+RabbitMQ?通過fanout模式實現(xiàn)消息接收功能(支持消費者多實例部署)
這篇文章主要介紹了Spring?Boot+RabbitMQ?通過fanout模式實現(xiàn)消息接收(支持消費者多實例部署),本文通過案例場景分析給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-03-03
Java實現(xiàn)ftp上傳下載、刪除文件及在ftp服務器上傳文件夾的方法
這篇文章主要介紹了Java實現(xiàn)ftp上傳下載、刪除文件及在ftp服務器上傳文件夾的方法,需要的朋友可以參考下2015-11-11
Java開發(fā)日記之你會不會5種牛的yml文件讀取方式
YAML是一種類似XML和JSON的用于格式化數(shù)據(jù)的標記語言,它的可讀性比起XML和JSON更高一些,這篇文章主要給大家介紹了關于Java開發(fā)日記之yml文件讀取方式的相關資料,需要的朋友可以參考下2025-05-05
spring security在分布式項目下的配置方法(案例詳解)
這篇文章主要介紹了spring security在分布式項目下的配置方法,本文通過一個項目案例給大家詳細介紹,通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10

