SpringBoot@value@ConfigurationProperties@PropertySource

@value

注入属性

实体

  @Value("${demo.name}")
    private  String name;
    @Value("${demo.list}")
    private  List<Object> list;
    @Value("${demo.shu}")
    private  String[] shu;
    @Value("${demo.set}")
    private Set<Object> set;
    @Value("${demo.map}")
    private  Map<String,Object> map;

默认配置类

//正常
demo.name=看看
//list
demo.list=看看,看看,看看
//数组
demo.shu=看看,看看,看看
//set
demo.set=看看,看看,看看
//map
demo.map= #{ {name:"hanmeimie",age:21}}

测试仅用了List的,其他大体类似

ConfigurableApplicationContext context = SpringApplication.run(App.class, args);
        MyConfig myConfig = context.getBean(MyConfig.class);
       List map=myConfig.getList();
        for (Object o : map) {
            System.out.println(o);
        }
@PropertySource("classpath:admin.properties")

手动配置文件,当不使用这个注解时,使用默认的配置文件,加入这个注解在后面括号里输入相应的配置文件的路径,这个配置类使用的是自己手动选择的配置文件

@ConfigurationProperties(prefix = "admin")

前缀,当加入这个注解时,前缀输入完全的情况下,可以不使用@vaule注解,但是最后的要与实体名保持一致。

可以与@PropertySource进行搭配完成手动配置文件并加上前缀不写@value

自己定义的配置文件里面的内容

admin.name=张三
admin.pwd=lisi

这里的前缀为admin

demo.demp.admin.name=张三

这里的前缀为demo.demp.admin

使用前缀注解后实体的样子

@Configuration
@Data
@PropertySource("classpath:admin.properties")
@ConfigurationProperties(prefix = "admin")
public class AdminConfig {
   
    private String name;
   
    private String pwd;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值