Springboot引入多个yml方法(多种方案)

 更新时间:2019年10月11日 10:03:42   作者:mysgk  
SpringBoot默认加载的是application.yml文件,所以想要引入其他配置的yml文件,就要在application.yml中激活该文件这篇文章主要介绍了Springboot引入多个yml方法,需要的朋友可以参考下

SpringBoot默认加载的是application.yml文件,所以想要引入其他配置的yml文件,就要在application.yml中激活该文件

定义一个application-resources.yml文件(注意:必须以application-开头)

application.yml中:

 spring:
  profiles:
    active: resources

以上操作,xml自定义文件加载完成,接下来进行注入。

application-resources.yml配置文件代码:

user:
 filepath: 12346
 uname: "13"

admin:
 aname: 26

方案一:无前缀,使用@Value注解

@Component
//@ConfigurationProperties(prefix = "user")
public class User {
  @Value("${user.filepath}")
  private String filepath;
  @Value("${user.uname}")
  private String uname;
  public String getFilepath() {
    return filepath;
  }
  public void setFilepath(String filepath) {
    this.filepath = filepath;
  }
  public String getUname() {
    return uname;
  }
  public void setUname(String uname) {
    this.uname = uname;
  }
  @Override
  public String toString() {
    return "User{" +
        "filepath='" + filepath + '\'' +
        ", uname='" + uname + '\'' +
        '}';
  }
}

方案二:有前缀,无需@Value注解

@Component
@ConfigurationProperties(prefix = "user")
public class User {
  //@Value("${user.filepath}")
  private String filepath;
  //@Value("${user.uname}")
  private String uname;
  public String getFilepath() {
    return filepath;
  }
  public void setFilepath(String filepath) {
    this.filepath = filepath;
  }
  public String getUname() {
    return uname;
  }
  public void setUname(String uname) {
    this.uname = uname;
  }
  @Override
  public String toString() {
    return "User{" +
        "filepath='" + filepath + '\'' +
        ", uname='" + uname + '\'' +
        '}';
  }
}


测试类:

package com.sun123.springboot;
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.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class UTest {
  @Autowired
  User user;
  @Test
  public void test01(){
    System.out.println(user);
  }
}

测试结果:

总结

以上所述是小编给大家介绍的Springboot引入多个yml方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Java延迟队列DelayQueue原理详解

    Java延迟队列DelayQueue原理详解

    这篇文章主要介绍了Java延迟队列DelayQueue原理详解,DelayQueue 是一个通过PriorityBlockingQueue实现延迟获取元素的无界队列无界阻塞队列,其中添加进该队列的元素必须实现Delayed接口,而且只有在延迟期满后才能从中提取元素,需要的朋友可以参考下
    2023-12-12
  • Java中绝对值函数的介绍与其妙用

    Java中绝对值函数的介绍与其妙用

    这篇文章主要给大家介绍了Java中绝对值函数的介绍与其妙用,其中包括绝对值函数用来获取表达式的绝对值和绝对值函数实现降序+升序输出。文章末尾给出了实例介绍,有需要的朋友们可以参考学习,下面来一起看看吧。
    2017-01-01
  • java阿拉伯数字转中文数字

    java阿拉伯数字转中文数字

    这篇文章主要为大家详细介绍了java实现阿拉伯数字转换为中文数字,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • FuncGPT慧函数保护数据安全提高代码质量减少软件故障(java示例)

    FuncGPT慧函数保护数据安全提高代码质量减少软件故障(java示例)

    这篇文章主要为大家介绍了FuncGPT慧函数保护数据安全提高代码质量减少软件故障(java示例),有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Spring中的ConversionService源码解析

    Spring中的ConversionService源码解析

    这篇文章主要介绍了Spring中的ConversionService源码解析,ConversionService是类型转换服务的接口,从名字就可以看出ConverterRegistry是要实现转换器注册表的接口,添加和移除Converter和GenericConverter,需要的朋友可以参考下
    2023-11-11
  • Java如何实现自定义异常类

    Java如何实现自定义异常类

    这篇文章主要介绍了Java如何实现自定义异常类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • maven私服搭建与使用教程

    maven私服搭建与使用教程

    在使用maven进行Java项目的开发过程中,难免会有些公共的私有库,这些库是不太方便放到中央仓库的,可以通过Nexus搭建一个私有仓库,这篇文章主要介绍了maven私服搭建与使用,需要的朋友可以参考下
    2023-03-03
  • Java泛型的继承和实现操作示例

    Java泛型的继承和实现操作示例

    这篇文章主要介绍了Java泛型的继承和实现操作,结合实例形式分析了java泛型类的继承以及泛型接口的实现相关操作技巧,需要的朋友可以参考下
    2019-08-08
  • Java实现文件切割拼接的实现代码

    Java实现文件切割拼接的实现代码

    这篇文章主要介绍了Java实现文件切割拼接的实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Maven打包跳过测试的5种方式总结

    Maven打包跳过测试的5种方式总结

    使用Maven打包的时候,可能会因为单元测试打包失败,这时候就需要跳过单元测试,下面这篇文章主要给大家介绍了关于Maven打包跳过测试的5种方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01

最新评论