SpringBoot 加载yml文件自定义参数初始化问题

2024-06-19 14:38

本文主要是介绍SpringBoot 加载yml文件自定义参数初始化问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  •  有 application.yml 自定义参数如下:

mqconfig:bankCode: MQmqServerURL: 192.168.0.111mqServerPort: 1414mqServerChannel: SERVERmqServerName: QMDWPBsendQueueName: DW_BB_FreceiveQueueName: DW_BB_BremoteQueueName: DW_BB_F

  •  java 类使用注解 

        @ConfigurationProperties(prefix="mqconfig")
        @Componen

@ConfigurationProperties(prefix="mqconfig")
@Component
public class MQConfig {private String bankCode;private String mqServerURL;private int mqServerPort;private String mqServerChannel;private String mqServerName;private String sendQueueName;private String receiveQueueName;private String remoteQueueName;public String getBankCode() {return bankCode;}public void setBankCode(String bankCode) {this.bankCode = bankCode;}public String getMqServerURL() {return mqServerURL;}public void setMqServerURL(String mqServerURL) {this.mqServerURL = mqServerURL;}public int getMqServerPort() {return mqServerPort;}public void setMqServerPort(int mqServerPort) {this.mqServerPort = mqServerPort;}public String getMqServerChannel() {return mqServerChannel;}public void setMqServerChannel(String mqServerChannel) {this.mqServerChannel = mqServerChannel;}public String getMqServerName() {return mqServerName;}public void setMqServerName(String mqServerName) {this.mqServerName = mqServerName;}public String getSendQueueName() {return sendQueueName;}public void setSendQueueName(String sendQueueName) {this.sendQueueName = sendQueueName;}public String getReceiveQueueName() {return receiveQueueName;}public void setReceiveQueueName(String receiveQueueName) {this.receiveQueueName = receiveQueueName;}public String getRemoteQueueName() {return remoteQueueName;}public void setRemoteQueueName(String remoteQueueName) {this.remoteQueueName = remoteQueueName;}}
}

当我们启动springboot时候就可以得到数据了;

注意: application.yml 自定义参数不能大写,否则获取不到数据。

如下,这样是在spring boot启动时报错:

MQCONFIG:bankCode: MQmqServerURL: 192.168.0.111

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'MQController': Unsatisfied dependency expressed through field 'mqService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'MQServiceImpl': Unsatisfied dependency expressed through field 'config'; nested exception is org.springframework.boot.context.properties.ConfigurationPropertiesBindException: Error creating bean with name 'MQConfig': Could not bind properties to 'MQConfig' : prefix=MQCONFIG, ignoreInvalidFields=false, ignoreUnknownFields=true; nested exception is org.springframework.boot.context.properties.source.InvalidConfigurationPropertyNameException: Configuration property name 'MQCONFIG' is not valid

 

 

 

 

这篇关于SpringBoot 加载yml文件自定义参数初始化问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1075307

相关文章

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

Java实现将Markdown转换为纯文本

《Java实现将Markdown转换为纯文本》这篇文章主要为大家详细介绍了两种在Java中实现Markdown转纯文本的主流方法,文中的示例代码讲解详细,大家可以根据需求选择适合的方案... 目录方法一:使用正则表达式(轻量级方案)方法二:使用 Flexmark-Java 库(专业方案)1. 添加依赖(Ma

Spring Boot拦截器Interceptor与过滤器Filter详细教程(示例详解)

《SpringBoot拦截器Interceptor与过滤器Filter详细教程(示例详解)》本文详细介绍了SpringBoot中的拦截器(Interceptor)和过滤器(Filter),包括它们的... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)详细教程1. 概述1

SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题

《SpringBoot利用dynamic-datasource-spring-boot-starter解决多数据源问题》dynamic-datasource-spring-boot-starter是一... 目录概要整体架构构想操作步骤创建数据源切换数据源后续问题小结概要自己闲暇时间想实现一个多租户平台,

VSCode中C/C++编码乱码问题的两种解决方法

《VSCode中C/C++编码乱码问题的两种解决方法》在中国地区,Windows系统中的cmd和PowerShell默认编码是GBK,但VSCode默认使用UTF-8编码,这种编码不一致会导致在VSC... 目录问题方法一:通过 Code Runner 插件调整编码配置步骤方法二:在 PowerShell

mybatis-plus分页无效问题解决

《mybatis-plus分页无效问题解决》本文主要介绍了mybatis-plus分页无效问题解决,原因是配置分页插件的版本问题,旧版本和新版本的MyBatis-Plus需要不同的分页配置,感兴趣的可... 昨天在做一www.chinasem.cn个新项目使用myBATis-plus分页一直失败,后来经过多方

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Spring Cloud之注册中心Nacos的使用详解

《SpringCloud之注册中心Nacos的使用详解》本文介绍SpringCloudAlibaba中的Nacos组件,对比了Nacos与Eureka的区别,展示了如何在项目中引入SpringClo... 目录Naacos服务注册/服务发现引⼊Spring Cloud Alibaba依赖引入Naco编程s依