Springboot 项目读取yaml的配置文件信息给静态方法使用,以及通过配置 ResourceBundle 类读取config.properties

读取yaml 的配置文件

配置文件信息

iot_saas_tenement:user_id: 7........8d9bprivate_key: MII.......qQ==bj_url: http://4.....5:8088project_name: iot_s.......rojectdevice_name: te.....ice

创建一个类 ProxyProperties 读取配置文件信息,并对外提供get方法

package com.purvardata.himp.third.bj.utils;import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;// 获取yaml的配置信息添加到静态方法
@Component
public final  class ProxyProperties {@Value("${iot_saas_tenement.bj_url}")private String bj_url;private static String url;@Value("${iot_saas_tenement.user_id}")private String user_id;private static String userId;@Value("${iot_saas_tenement.private_key}")private String private_key;private static String privateKey;@Value("${iot_saas_tenement.project_name}")private String project_name;private static String projectName;@Value("${iot_saas_tenement.device_name}")private String device_name;private static String deviceName;@PostConstructpublic void setUrl() {url=this.bj_url;userId=this.user_id;privateKey=this.private_key;projectName=this.project_name;deviceName=this.device_name;}public static String getUrl() {return url;}public static String getUserId() {return userId;}public static String getPrivateKey() {return privateKey;}public static String getProjectName() {return projectName;}public static String getDeviceName() {return deviceName;}
}

目标静态方法通过get方法获取对应的属性

通过类 ResourceBundle 读取 config.properties 的配置文件

config.properties配置文件信息

userId=7dd.......9b
private_key=MIIC........Q==
url=http://4......5:8088
project_name=iot_sa..............ect

定义读取 配置类 PropertiesUtils,注意 config.properties 目录,要是和 ResourceBundle.getBundle("config")路径一致,我这里放根路径了

package com.iline.bj;import java.util.ResourceBundle;public class PropertiesUtils {private static ResourceBundle bundle = ResourceBundle.getBundle("config");/*** 获取值** @param key* @return*/public static String getValue(String key) {return bundle.getString(key);}}

使用配置类 PropertiesUtils.getValue 获取配置文件 config.properties  的信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/503875.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯云优惠券一共有3个渠道可以领取,你知道吗?

腾讯云代金券领取渠道有哪些?腾讯云官网可以领取、官方媒体账号可以领取代金券、完成任务可以领取代金券,大家也可以在腾讯云百科蹲守代金券,因为腾讯云代金券领取渠道比较分散,腾讯云百科txybk.com专注汇总优惠代金券领取页面&am…

基于JAVA+Springboot+Thymeleaf前后端分离项目:图书馆管理系统设计与实现

博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

[方案实操]中国电子副总陆志鹏:《数据资产化路径的思考与探索》演讲实录和解析

中国数字经济发展和治理学术年会(2023)上,中国电子党组成员、副总经理,50人论坛委员陆志鹏先生《数据资产化路径的思考与探索》为题进行了主旨演讲,提出“如果简单把资源进行评估定价,价值非常有限&#xf…

如何确保JDK版本与操作系统架构匹配?

1. 序言 最近的工作中,需要升级JDK版本到17.0.7,以解决一个JDK bug:JDK-8299626该bug的core dump关键字如下:SIGSEGV in PhaseIdealLoop::build_loop_late_post_work公司JDK团队提供的、包含JDK的基础镜像,有aarch64和…

浅谈人才招聘APP开发的解决方案

随着企业竞争加剧,高效、精准地招聘人才成为企业持续发展的关键。人才招聘系统能够简化招聘流程,提高效率,确保企业快速找到合适人才。同时,通过智能匹配和数据分析,提升招聘质量,优化候选人体验。因此&…

2D割草/吸血鬼游戏 性能优化——GPU Spine动画

视频中万人同屏方案(gpu动画、渲染、索敌、避障等功能),可某宝搜店铺:【游戏开发资源商店】获取整套方案源码。 在过去的几年里,割草、类吸血鬼玩法的游戏频出爆款,其丰富的技能、满屏特效、刷怪清屏的解压畅快是此类游戏的核心&…

小程序常用样式和组件

常用样式和组件 1. 组件和样式介绍 在开 Web 网站的时候: 页面的结构由 HTML 进行编写,例如:经常会用到 div、p、 span、img、a 等标签 页面的样式由 CSS 进行编写,例如:经常会采用 .class 、#id 、element 等选择器…

2024.3.2每日一题

LeetCode 受限条件下课到达节点的数目 题目链接:2368. 受限条件下可到达节点的数目 - 力扣(LeetCode) 题目描述 现有一棵由 n 个节点组成的无向树,节点编号从 0 到 n - 1 ,共有 n - 1 条边。 给你一个二维整数数组…

Python打发无聊时光:12.用PyQt实现简易的心电起搏器界面

第一步:装PyQt库 pip install PyQt5 第二步:复制代码 import sys from PyQt5.QtWidgets import (QApplication, QMainWindow, QPushButton, QVBoxLayout,QWidget, QLabel, QProgressBar, QSlider, QLineEdit, QHBoxLayout) from PyQt5.QtCore import …

Linux服务:Nginx反向代理与负载均衡

一、Nginx反向代理 1、什么是反向代理? 代理分为两类,正向代理和反向代理。 ①正向代理:帮助用户访问服务器,缓存服务器内容。 ②反向代理:代理服务器处理用户的请求,决定转发请求给谁处理负载均衡的作…

LabVIEW最佳传输系统设计

LabVIEW最佳传输系统设计 介绍了基于LabVIEW软件开发的最佳基带传输系统和最佳带通传输系统的设计。通过软件仿真实现了脉冲成形滤波器和匹配滤波器的设计,证明了系统在消除码间干扰和抗噪声方面的优异性能。此设计不仅激发了学生的学习兴趣,还有助于提…

spring-boot-starter-parent和spring-boot-dependencies介绍

springboot项目的pom文件中&#xff0c;我们经常看见这样(下图)两种springboot的版本依赖管理方式&#xff1b;图片中的这两种依赖声明方式任意用其中一种都可以。文章后面会简单阐述一下区别和使用场景。 事例中完整的pom文件 <?xml version"1.0" encoding&quo…