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

作者:mysgk 时间:2023-07-21 21:10:48 

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方法(多种方案)

总结

以上所述是小编给大家介绍的Springboot引入多个yml方法,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

来源:https://www.cnblogs.com/mysgk/p/9790801.html

标签:Spring,boot,yml
0
投稿

猜你喜欢

  • C++调试追踪class成员变量的方法

    2022-11-21 01:32:12
  • 详解Struts2拦截器机制

    2022-03-12 23:20:52
  • 从try-with-resources到ThreadLocal,优化你的代码编写方式

    2023-11-11 03:19:52
  • Java泛型常见面试题(面试必问)

    2021-11-20 20:51:55
  • java.sql.Date和java.util.Date的区别详解

    2023-11-28 16:15:09
  • 详解C# ConcurrentBag的实现原理

    2022-11-17 02:26:05
  • Android实现手机振动设置的方法

    2021-08-02 23:46:21
  • JAVA读取文件流,设置浏览器下载或直接预览操作

    2023-10-06 09:20:59
  • 如何使用Flutter发布安卓应用

    2022-09-07 08:46:07
  • Android图片处理工具类BitmapUtils

    2022-12-28 05:23:39
  • Java使用ThreadLocal实现当前登录信息的存取功能

    2023-06-06 12:00:34
  • C#设计模式之Singleton模式

    2022-03-28 09:01:31
  • Android 蓝牙2.0的使用方法详解

    2022-10-19 17:21:21
  • Java日常练习题,每天进步一点点(32)

    2022-04-29 07:12:53
  • 关于Tomcat出现The origin server did not find a current representation for the target resourc...的问题

    2023-03-03 18:02:43
  • C#无法打开计算机“.”上的 IISADMIN 服务的解决方法

    2023-02-04 21:46:54
  • Dynamic和Var的区别及dynamic使用详解

    2022-09-22 13:18:23
  • Android第三方控件PhotoView使用方法详解

    2021-12-07 20:35:48
  • 通过Java实现反向代理集群服务的平滑分配

    2023-05-28 12:51:54
  • idea生成类注释和方法注释的正确方法(推荐)

    2022-09-11 03:45:14
  • asp之家 软件编程 m.aspxhome.com