为什么80%的码农都做不了架构师?>>>   

以下是application.yml文件内容示例,要怎么读取呢?

aliyun:oss:endpoint: oss-cn-beijing.aliyuncs.comaccessKeyId: LTAIUyFKA9oGQHZraccessKeySecret: osbYp6tMyHj0wGGbUIXPul9HvDoMh1bucketName: gangan-test1

1、使用@Value方式(常用)

@Slf4j
@Component
public class OSSClientUtil {@Value("${aliyun.oss.endpoint}")private String endpoint;@Value("${aliyun.oss.accessKeyId}")private String accessKeyId;@Value("${aliyun.oss.accessKeySecret}")private String accessKeySecret;@Value("${aliyun.oss.bucketName}")private String bucketName;
}

2、使用<Environment>方式

public String uploadFile2OSS(InputStream instream, String fileName) {endpoint = env.getProperty("aliyun.oss.endpoint");accessKeyId = env.getProperty("aliyun.oss.accessKeyId");accessKeySecret = env.getProperty("aliyun.oss.accessKeySecret");bucketName = env.getProperty("aliyun.oss.bucketName");
}

3、如果读取的不是系统默认的配置文件(是指在resources根目录下的application.properties或application.yml),可以加个注解@PropertySource,指定一下读取的路径。

@PropertySource({"classpath:config/my.properties","classpath:config/config.properties"})
  1. 该注解指定 src/main/resources目录下config目录下的my.properties文件。
  2. 多配置文件引用,若取两个配置文件中有相同属性名的值,则取值为最后一个配置文件中的值。

4、@ConfigurationProperties (该注解声明的类是一个单例)

使用场景:我们想把配置文件的信息,读取并自动封装成实体类,这样子,我们在代码里面使用就轻松方便多了,这时候,我们就可以使用@ConfigurationProperties,它可以把同类的配置信息自动封装成实体类,同理如果不是默认的application.yml文件,只需@PropertySource加以指定即可。

该注解有以下两种用法。                       方式1

@Component
@ConfigurationProperties(prefix = "wechat")
public class WechatAccountConfig {private String mpAppId;private String mpAppSecret;private String openAppId;private Map<String, String> templateId;
}

方式2

@Bean
@ConfigurationProperties(prefix = "wechat")
public WechatAccountConfig wechatAccountConfig(){return new WechatAccountConfig();
}

用的时候用@Autowired WechatAccountConfig wechatAccountConfig; 引入即可。

转载于:https://my.oschina.net/360yg/blog/1618066

Springboot 读取配置文件相关推荐

  1. 你只知道@Value?设置server.port就能定义端口号是如何实现的?springboot读取配置文件的多种方式以及源码解析

    你只知道@Value?设置server.port就能定义端口号是如何实现的?springboot读取配置文件的多种方式以及原理解析 一.SpringBoot全局配置文件优先级 二.属性注入常用注解 1 ...

  2. Springboot 读取配置文件参数(yml\properties)

    Springboot 读取配置文件的参数,这里介绍2种方式.一种是使用注解@Value,一种是使用属性对应的方式. (说明:我这里贴出来的配置,里面的参数命名是下划线和驼峰命名混用的,这里只是为了演示 ...

  3. springboot读取配置文件的三种方式

    项目中springboot读取配置文件的三种方式: 1.使用Environment 2.使用@Value 3.使用@ConfigurationProperties注解映射到bean中,定义一个User ...

  4. SpringBoot 读取配置文件中参数全面教程

    一.简介 在日常开发使用 SpringBoot 框架时,经常有一些配置信息需要放置到配置文件中,我们需要手动读取这些配置到应用中进行一些逻辑,这里整理了一些常用读取配置的方法,简单介绍一下. 1.Sp ...

  5. docker springboot读取配置文件_Docker从入门到掉坑(三):容器太多,操作好麻烦

    前边的两篇文章里面,我们讲解了基于docker来部署基础的SpringBoot容器,如果阅读本文之前没有相关基础的话,可以回看之前的教程. Docker 从入门到掉坑​mp.weixin.qq.com ...

  6. springboot 读取配置文件内容的几种方式

    1 使用 Environment 进行读取 env.getProperty("配置文件中的值") 2  使用注解的方式 @PropertySource("classpat ...

  7. springboot 读取配置文件_使用 @ConfigurationProperties 在 Spring Boot 中加载配置

    本文地址: 使用 @ConfigurationProperties 在 Spring Boot 中加载配置 使用 Spring Boot 加载配置文件的配置非常便利,我们只需要使用一些注解配置一下就能 ...

  8. Springboot中,如何读取配置文件中的属性

    摘要:在比较大型的项目的开发中,比较经常修改的属性我们一般都是不会在代码里面写死的,而是将其定义在配置文件中,之后如果修改的话,我们可以直接去配置文件中修改,那么在springboot的项目中,我们应 ...

  9. 在springboot中,如何读取配置文件中的属性

    摘要:在比较大型的项目的开发中,比较经常修改的属性我们一般都是不会在代码里面写死的,而是将其定义在配置文件中,之后如果修改的话,我们可以直接去配置文件中修改,那么在springboot的项目中,我们应 ...

最新文章

  1. sql中使用“where 1=1 and ....“ 到底影响效率吗,回答不会也永远不会
  2. mongoose --- 建立一个集合规则,并导出.
  3. .NET Conf 2019 今天在上海开幕,图片直播地址
  4. idea调试怎么跳出循环_IDEA调试技巧条件断点实现步骤详解
  5. net4.0的从客户端中检测到有潜伏危险的 Request.Form
  6. poj2976(二分搜索,最大化平均值)
  7. 网络安全--风险评估
  8. python项目:基于OpenCV的学生网课睡意检测系统
  9. android 360度全景,android 360度全景展示
  10. Toshiba转换芯片-TC358778XBG:RGB转MIPI DSI芯片资料
  11. 荣耀8更改微信提示音
  12. java CGLIB动态代理
  13. macos 终端下载_如何使用终端下载macOS更新
  14. JavaWeb+MySql+Tomcat一键部署方案
  15. VUE 通过ref 控制滚动条到底部顶部
  16. oracle 10g ora12560,OracleORA-12560解决方法
  17. Android 开机动画(bootanimation)启动
  18. 【网络入门】详解常用的基础网络知识(面试笔试常考内容)
  19. EmguCV-第01讲-EmguCV介绍与安装配置
  20. 乔布斯自传自述-新浪

热门文章

  1. Stackops快速部署手册
  2. Ansible-playbook 拾遗
  3. 如何解决 错误code signing is required for product type 'xxxxx' in SDK 'iOS 8.2'
  4. C#控制台程序取得INSOYA视频区的视频的真实URL,视频标题,发布时间集合。
  5. python引用、浅拷贝、深拷贝
  6. Android中MVC框架的运用
  7. 使用eclipse开发web需要搭建什么环境
  8. SQL性能第2篇:查询分析和访问路径制定
  9. 360内部监控系统Wonder实践之路
  10. 只删除字符串前面的‘*’号。