Springboot 如何指定获取出 yml文件里面的配置值
作者:小目标青年 发布时间:2022-08-29 21:04:48
标签:Springboot,yml文件,配置值
之前写过一篇获取properties文件里面的值:
Springboot 指定获取自己写的配置properties文件的值
www.jb51.net/article/217899.htm
现在补充多一篇,指定获取yml里面的配置值 。
内容:
这里分别介绍两种方式,都是基于注解实现,分别是:
@Value("${xxxxx.xx}")
@ConfigurationProperties(prefix = "xxxxx")
进入主题:
@Value("${xxxxx.xx}")
使用这种方式非常简单(每一个注解获取一个对应的配置值),
在yml里面加入我们的自定义配置项,如(大小写随意,调用时对应好就行):
指定获取这些值去使用,如:
@Value("${myKey.tua}")
private String tuaKey;
@Value("${myKey.aco}")
private String acoKey;
@Value("${mynum.new}")
private String myNum;
@GetMapping("/getMyTest")
public void getMyTest(){
System.out.println("tuaKey:"+tuaKey);
System.out.println("acoKey:"+acoKey);
System.out.println("myNum:"+myNum);
}
可以看到结果,获取正常:
@ConfigurationProperties(prefix = "xxxxx")
使用这种方式也非常简单(一次性将多个配置值获取并示例化成bean放入到spring容器里面),
在yml里面加入我们的自定义配置项,如(注意,使用一开始的key参数使用小写,使用大写会出错,因为prefix不支持驼峰命名和下划线形式):
然后我们建一个对于这些配置项的实体类,并使用上注解 @ConfigurationProperties ,如:
prefix指前缀,一般也就是第一个,我们这个例子的第一个是myinfo
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* @Author : JCccc
* @CreateTime : 2020/5/19
* @Description :
**/
@Component
@ConfigurationProperties(prefix = "myinfo")
public class MyInfo {
private String name;
private Integer age;
private String description;
@Override
public String toString() {
return "MyTest{" +
"name='" + name + '\'' +
", age=" + age +
", description='" + description + '\'' +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
指定获取这些值去使用,也就是相当于使用这个类,直接配合@Autowired 使用即可:
@Autowired
MyInfo myInfo;
@GetMapping("/getMyTest")
public void getMyTest(){
System.out.println("myInfo:"+myInfo.toString());
System.out.println("myInfo name:"+myInfo.getName());
}
可以看到结果,获取正常:
ok,该篇就到此。 以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家!
来源:https://blog.csdn.net/qq_35387940/article/details/106209485


猜你喜欢
- Android application捕获崩溃异常怎么办?通用 application1、收集所有 avtivity 用于彻底退出应用2、捕
- 本文实例为大家分享了Android Scroller实现弹性滑动的具体代码,供大家参考,具体内容如下首先看下实现效果,可以看到当我们手指松开
- @GetMapping注解携带参数方式今天突然发现,当我们根据id查询用户信息时,如果不想通过localhost:8080//findOne
- 一、需求描述拼图是一款益智类经典游戏了,本游戏学习了一些前辈们的经验,整体来说讲,将图片用切图工具进行切割,监听用户手指滑动事件,当用户对凌
- 个人认为单例模式是设计模式中最简单也是最常用的一种,是对有限资源合理利用的一种方式。这个模式看似简单,但是其中蕴含了关于并发、类加载、序列化
- 本文实例为大家分享了android实现简单拼图游戏的具体代码,供大家参考,具体内容如下1.2.//使用回调接口,首先初始化pintuview
- 一、简单的命令-n 在非 GUI 模式下运行JMeter-t 要运行的 JMeter 测试脚本文件-r 远程执行启动全部代理机-H 代理机器
- 面试题1:你了解线程池么?简单介绍一下。java提供的一个java.util.concurrent.Executor接口的实现用于创建线程池
- 目前大多数开发者使用EventBus或者Otto作为事件总线通信库,对于RxJava使用者来说,RxJava也可以轻松实现事件总线,因为它们
- Java进阶之FileUpload完成上传的实例 FileUpload是Apache commons下面
- 这是自己写的简单的解析pcap文件,方便读取pcap文件,大家参考使用吧InputStream is = DataParser.class.
- 本文实例为大家分享了C语言实现中国象棋的具体代码,供大家参考,具体内容如下运行截图实现思路老套路,二维数组存储棋盘,宏定义各种棋子,每次棋子
- 目录背景实体类示例一示例二背景以前常用的排序方式是通过实现Comparator接口来进行排序,写法相对来说比较复杂,使用Comparator
- 我最近上班又遇到一个小难题了,就是如题所述:ViewPager预加载的问题。相信用过ViewPager的人大抵都有遇到过这种情况,网上的解决
- 本文实例讲述了c#用for语句输出一个三角形的方法。分享给大家供大家参考。具体分析如下:这是一道面试题,要求是这样的:只使用一个for循环输
- 废话不多说了,直接给大家贴代码了,具体代码如下所示:private SystemBarTintManager tintManager;@Ov
- 本文实例讲述了C#动态执行批处理命令的方法。分享给大家供大家参考。具体方法如下:C# 动态执行一系列控制台命令,并允许实时显示出来执行结果时
- 本文实例讲述了java中static关键字用法,分享给大家供大家参考。具体分析如下:一、介绍:1、在类中,用static声明的成员变量为静态
- 咱们废话不多说进入主题、系统主页展示:用户登录后进行系统首页:主要功能模块如下、分角色管理、超级管理员拥有最高权限、可以进行菜单灵活控制、用
- 目录前提第一步、去官网创建高德Key第二步 通过Gradle集成SDK(方便):第三步 配置