软件编程
位置:首页>> 软件编程>> java编程>> Springboot引入多个yml方法(多种方案)

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

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

标签:Spring,boot,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方法(多种方案)

总结

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

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

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com