服务器之家

服务器之家 > 正文

浅谈SpringBoot主流读取配置文件三种方式

时间:2020-09-19 00:26     来源/作者:My Dearest

读取配置SpringBoot配置文件三种方式

一、利用Bean注解中的Value(${})注解

?
1
2
3
4
5
6
@Data
@Component
public class ApplicationProperty {
  @Value("${application.name}")
  private String name;
}

该方式可以自动读取当前配置文件appliation.yml  或者application.properties中的配置值
区别在于读取yml文件时候支持中文编码,peoperties需要转码

二、利用@ConfigurationProperties(prefix = "developer")注解

?
1
2
3
4
5
6
7
8
9
@Data
@ConfigurationProperties(prefix = "developer")
@Component
public class DeveloperProperty {
  private String name;
  private String website;
  private String qq;
  private String phoneNumber;
}

该方式直接将当前加载yml配置文件前缀为developer的属性

读取developer.name...

pom文件中引入依赖

?
1
2
3
4
5
<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-configuration-processor</artifactId>
      <optional>true</optional>
</dependency>

三、前两种读取配置的使用方式

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//使用方法
private final ApplicationProperty applicationProperty;
private final DeveloperProperty developerProperty;
 
@Autowired
  public PropertyController(ApplicationProperty applicationProperty, DeveloperProperty developerProperty) {
    this.applicationProperty = applicationProperty;
    this.developerProperty = developerProperty;
  }
 
@GetMapping("/property")
  public Dict index() {
    System.out.println("name:"+applicationProperty.getName());
    System.out.println("version:"+applicationProperty.getVersion());
    System.out.println("DevName:"+applicationProperty.getDeveloperName());
  }

四、用Hutool的方式读取配置文件(不支持yml格式)

1.用Props的方式读取

?
1
static Props props1 = new Props("application.properties",CharsetUtil.CHARSET_UTF_8);

2.用Setting的方法读取

?
1
static Setting setting = new Setting("application-dev.yml", CharsetUtil.CHARSET_UTF_8,true);

3.将配置文件读取

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Constant {
  
  static Props props1 = new Props("application.properties",CharsetUtil.CHARSET_UTF_8);
 
  static Setting setting = new Setting("application-dev.properties", CharsetUtil.CHARSET_UTF_8,true);
 
  public static final String Name ;
  public static final String SettingName ;
 
  static {
    Name = props.getStr("application.name");
    SettingName = setting.getByGroup("name","application");
 
  }
}

4.使用方式

?
1
System.out.println(Constant.DevName+"------"+Constant.DevWebsite);

直接用常量类调用该类属性即可使用

到此这篇关于浅谈SpringBoot主流读取配置文件三种方式的文章就介绍到这了,更多相关SpringBoot主流读取配置内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家! 

原文链接:https://juejin.im/post/6873648875345805320

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址 2020-08-12
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
返回顶部