亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot項(xiàng)目獲取統(tǒng)一前綴配置及獲取非確定名稱配置方法

 更新時(shí)間:2024年09月09日 11:32:22   作者:gooluke  
在SpringBoot項(xiàng)目中,使用@ConfigurationProperties注解可獲取統(tǒng)一前綴的配置,具體做法是創(chuàng)建配置類,使用prefix屬性指定配置的前綴,本文給大家介紹SpringBoot項(xiàng)目獲取統(tǒng)一前綴配置以及獲取非確定名稱配置方法,感興趣的朋友跟隨小編一起看看吧

SpringBoot項(xiàng)目獲取統(tǒng)一前綴配置以及獲取非確定名稱配置

在SpringBoot項(xiàng)目中,我們經(jīng)??吹浇y(tǒng)一前綴的配置,我們?cè)撛趺唇y(tǒng)一獲取
my.config.a.name=xiaoming
my.config.a.age=18
my.config.a.address=guangdong

my.config.b.name=xiaomli
my.config.b.age=20
my.config.b.address=shandong

方式一:使用對(duì)應(yīng)的配置類并結(jié)合注解:@ConfigurationProperties(prefix = “xxx.xxx”)

配置文件:

my.config.name=xiaoming
my.config.age=18
my.config.address=guangdong

對(duì)應(yīng)的配置類:MyProperties

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
 * @author gooluke
 */
@Component
@ConfigurationProperties(prefix = "my.config")
@Getter
@Setter
public class MyProperties {
    private String name;
    private int age;
    private String address;
}

獲取配置類,打印屬性:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/test")
public class TestController {
    @Autowired
    private MyProperties myProperties;
    @RequestMapping("/show")
    public void show() {
        System.out.println("myProperties.getName() = " + myProperties.getName());
        System.out.println("myProperties.getAge() = " + myProperties.getAge());
        System.out.println("myProperties.getAddress() = " + myProperties.getAddress());
    }
}

打印結(jié)果:

方式二:獲取統(tǒng)一前綴,而后面非確定字段名的配置

配置文件:

my.config.a.name=xiaoming
my.config.a.age=18
my.config.a.address=guangdong
my.config.b.name=xiaomli
my.config.b.age=20
my.config.b.address=shandong

對(duì)應(yīng)的配置類:

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.Map;
/**
 * @author gooluke
 */
@Component
@ConfigurationProperties(prefix = "my")
@Getter
@Setter
public class MyProperties2 {
	//這里的config得對(duì)應(yīng)上my.config.xx里的config
    private Map<String, UserInfoConfig> config;
    @Setter
    @Getter
    public static class UserInfoConfig {
        private String name;
        private Integer age;
        private String address;
    }
}

獲取配置類,打印屬性:

@Autowired
private MyProperties2 myProperties2;
@RequestMapping("/show2")
public void show2() {
    Map<String, MyProperties2.UserInfoConfig> config = myProperties2.getConfig();
    config.forEach((user, userInfoConfig) -> {
        System.out.println("user = " + user);
        System.out.println("userInfoConfig.getName() = " + userInfoConfig.getName());
        System.out.println("userInfoConfig.getAge() = " + userInfoConfig.getAge());
        System.out.println("userInfoConfig.getAddress() = " + userInfoConfig.getAddress());
    });
}

打印結(jié)果:

到此這篇關(guān)于SpringBoot項(xiàng)目獲取統(tǒng)一前綴配置以及獲取非確定名稱配置的文章就介紹到這了,更多相關(guān)SpringBoot獲取統(tǒng)一前綴配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論