Spring-boot读取多个配置文件

来源:互联网 发布:php 使用ftp上传文件 编辑:程序博客网 时间:2024/06/04 23:39

由于工作原因,一个项目需要读取多个配置文件,经过网上一番搜索,成功实现目标,现将实现过程做如下记录,以供参考。


  • 核心配置文件

resources 目录下有两个文件,声明下我项目的配置文件已放在git》> 上,bootstrap.properties 文件用已从git上获取我的配置文件,新建application-global.yml 文件用来做测试,文件目录如下
这里写图片描述

  • 配置文件内容
    在bootstrap.properties配置文件中通过spring.profiles.active属性来设置,其值对应{profile}值,如:spring.profiles.active=global就会加载application-global.yml 配置文件内容,具体如下所示:
  • spring.cloud.config.uri=http://spring.cloud.config.label=profilesspring.application.name=spring.cloud.config.profile=globalspring.profiles.active= global

    程序启动会先浏览bootstrap.properties文件,然后获取git上配置文件启动,最后加载application-global.yml文件这样就实现多个配置文件同时读取。

    application-global.yml配置文件内容如下:REG_USER_ACCOUNT_EXIST: "用户已注册"REG_SBK_ZC: "该社保卡已经被注册"
    • 创建接口:
    import io.swagger.annotations.Api;import io.swagger.annotations.ApiImplicitParam;import io.swagger.annotations.ApiOperation;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;import org.springframework.core.env.Environment;@RestController@Api(description = "异常类")@RequestMapping("/global")public class GlobalController {    @Autowired      private Environment env;      @ApiOperation(value = "异常名称")    @ApiImplicitParam(name = "code", value = "异常编码", required = true, paramType = "query")    @GetMapping("/code")       public String code(@RequestParam String code) {         return "message:"+env.getProperty(code);      }  }

    启动程序,测试成功。

    原创粉丝点击