温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot加载多个配置文件

发布时间:2020-04-14 08:16:18 来源:网络 阅读:3345 作者:nineteens 栏目:编程语言

  默认配置文件

  当我们创建一个springboot项目的时候,系统默认会为我们在src/main/Java/resources目录下创建一个application.properties。

  springboot如何同时加载多个配置文件

  springboot 默认是在src/main/resources文件夹中加载application.properties默认配置文件

  格式为application-{profile}.properties,其中{profile}对应你的环境标识

  在application.properties中添加spring.profiles.active = dev,database

  # 加载多个配置文件,系统加载了application.properties application-database.properties application-dev.properties 三个配置文件

  spring.profiles.active = dev,database

  系统加载了src/main/resources目录下的application.properties application-database.properties application-dev.properties 三个配置文件

  将配置文件的属性赋给实体类

  application-dev.properties文件内容

  dev.name=liumei

  java实体类

  package com.hb.config;

  import org.springframework.boot.context.properties.ConfigurationProperties;

  import org.springframework.stereotype.Component;

  @Component

  @ConfigurationProperties(prefix="dev")

  public class DevConfig {

  // application-dev.properties中dev.name的值

  private String name;

  public String getName() {

  return name;

  }

  public void setName(String name) {

  this.name = name;

  }

  }

  @ConfigurationProperties(prefix=“dev”) 意思是说加载所有配置信息中dev.name的值;name的属性要有get和set方法

  自定义配置文件

  上面介绍的是我们都把配置文件写到application.yml中。有时我们不愿意把配置都写到application配置文件中,这时需要我们自定义配置文件,比如test.properties:

  com.forezp.name=forezp

  com.forezp.age=12

  怎么将这个配置文件信息赋予给一个javabean呢?

  @Configuration

  @PropertySource(value = "classpath:test.properties")

  @ConfigurationProperties(prefix = "com.forezp")

  public class User {

  private String name;

  private int age;

  public String getName() {

  return name;

  }无锡好的×××医院 http://www.zzch220.com/

  public void setName(String name) {

  this.name = name;

  }

  public int getAge() {

  return age;

  }

  public void setAge(int age) {

  this.age = age;

  }

  }

  在最新版本的springboot,需要加这三个注解。

  @Configuration

  @PropertySource(value = “classpath:test.properties”)

  @ConfigurationProperties(prefix = “com.forezp”);在1.4版本需要


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI