springboot解析自定义yml

Easter79
• 阅读 684

springboot解析自定义yml

在实际项目开发中我们经常需要用到一些自定义配置,并且希望单独配置,方便维护,现在介绍下方式:

方式一手动加载

对于一些不变动的配置,写死在项目中维护,如下springboot解析自定义yml

然后在启动类中加载该配置

'''

public class AAApplication {

    public static void main(String[] args) {
        SpringApplication.run(RecommendApplication.class, args);
    }
    @Bean
    public static PropertySourcesPlaceholderConfigurer properties() {
        PropertySourcesPlaceholderConfigurer configurer = new PropertySourcesPlaceholderConfigurer();
        YamlPropertiesFactoryBean yaml = new YamlPropertiesFactoryBean();
        yaml.setResources(new ClassPathResource("siteuid-config.yml"));
        configurer.setProperties(yaml.getObject());
        return configurer;
    }
}

注意:如果是启动配置是properties文件,这里是无法加载yml,需要将配置的siteuid-config.yml转成siteuid-config.properties

方式二集成springcloud config

集成springcloud config后,默认根据应用名加载,如果需要加载多配置,需要修改相关配置:

spring:
  application:
    name: quote
  profiles:
    active: dev
  cloud:
    config:
      profile: dev
      name: quote,siteuid-config
      enabled: true
      discovery:
        service-id: config-server
        enabled: true
点赞
收藏
评论区
推荐文章
kenx kenx
3年前
SpringBoot 默认json解析器详解和字段序列化自定义
前言在我们开发项目API接口的时候,一些没有数据的字段会默认返回NULL,数字类型也会是NULL,这个时候前端希望字符串能够统一返回空字符,数字默认返回0,那我们就需要自定义json序列化处理SpringBoot默认的json解析方案我们知道在springboot中有默认的json解析器,SpringBoot中默认使用的Json解析技术框架是ja
Easter79 Easter79
3年前
springcloud的配置文件的读取顺序
SpringBoot默认支持properties和YAML两种格式的配置文件。前者格式简单,但是只支持键值对。如果需要表达列表,最好使用YAML格式。SpringBoot支持自动加载约定名称的配置文件,例如application.yml。如果是自定义名称的配置文件,就要另找方法了。可惜的是,不像前者有@PropertySource这样方便的加载方式,
Easter79 Easter79
3年前
springboot学习笔记2(拦截器,redis,授权登录,读取yml配置文件)
介绍一下springboot的一些自定义配置。自定义配置前,需要加入一些依赖,在学习笔记1中都要介绍1.使用springboot自定义拦截器。 首先自己一个拦截器:publicclassMyInterceptorimplementsHandlerInterceptor{@Override
Easter79 Easter79
3年前
springboot2配置文件定义${user.name}内容失效问题探究
前言在朋友的项目有个自定义配置文件user.yml,其内容如下user:userId:1name:张三email:zhangsan@qq.com其映射实体内容为如下@Data@AllArgsConstructor@NoArgsConstruc
Easter79 Easter79
3年前
SpringCloud 启动时报No active profile set, falling back to default profiles default
这在Spring程序启动时没有找到默认的配置文件所引发的错误,默认文件application.yml如下图: !这里写图片描述(https://oscimg.oschina.net/oscnet/4a822ce35ff8ed227a2c57f496787d95e5a.png)一般在项目中都会有多个,如有正式环境、测试环境等。如下
Easter79 Easter79
3年前
Taro小程序自定义顶部导航栏
微信自带的顶部导航栏是无法支持自定义icon和增加元素的,在开发小程序的时候自带的根本满足不了需求,分享一个封装好的组件,支持自定义icon、扩展dom,适配安卓、ios、h5,全面屏。我用的是京东的Taro多端编译框架写的小程序,原生的也可以适用,用到的微信/taro的api做调整就行,实现效果如下。!在这里插入图片描述(https://i
Easter79 Easter79
3年前
SpringBoot系列六:SpringBoot整合Tomcat
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅。1、概念:SpringBoot整合Tomcat2、背景  SpringBoot本身支持有两类的WEB容器:默认的Tomcat、Jetty,那么现在如果从实际的角度来看,在SpringBoot运行的时候即使没有WEB容器,那么也可以采用自定义的方式实
Stella981 Stella981
3年前
SpringBoot 2.0 系列003
SpringBoot2.0系列003自定义Parent默认我们使用SpringBoot的方式是通过SB的parent项目的方式,此种之前的教程中我们已经演示过了,这里不做赘述。使用自定义parent管理SpringBoot项目
Easter79 Easter79
3年前
SpringBoot2.0之六 多环境配置
  开发过程中面对不同的环境,例如数据库、redis服务器等的不同,可能会面临一直需要修改配置的麻烦中,在以前的项目中,曾通过Tomcat的配置来实现,有的项目甚至需要手动修改相关配置,这种方式费时费力,出错的概率还极大,SpringBoot为我们提供了更加简单方便的配置方案来解决多环境的配置问题,下面我们看看怎么实现。一、新建一个项目(本文以上篇的代码
Stella981 Stella981
3年前
SpringBoot2.0之六 多环境配置
  开发过程中面对不同的环境,例如数据库、redis服务器等的不同,可能会面临一直需要修改配置的麻烦中,在以前的项目中,曾通过Tomcat的配置来实现,有的项目甚至需要手动修改相关配置,这种方式费时费力,出错的概率还极大,SpringBoot为我们提供了更加简单方便的配置方案来解决多环境的配置问题,下面我们看看怎么实现。一、新建一个项目(本文以上篇的代码
Easter79
Easter79
Lv1
今生可爱与温柔,每一样都不能少。
文章
2.8k
粉丝
5
获赞
1.2k