首页 > 其他分享 >SpringBoot 读取配置文件

SpringBoot 读取配置文件

时间:2023-09-04 16:25:40浏览次数:44  
标签:PropertySource SpringBoot 配置文件 yml public test class 读取

  1. 在resources文件下创建新的配置文件,如test.yml:
es:
  name: elasticsearch
  1. 准备使用@PropertySource注解来读取test.yml内容,但@PropertySource本身不支持yml文件,所以创建以下类:
public class PropertySourceConfig extends DefaultPropertySourceFactory {
    @Override
    @NonNull
    public PropertySource<?> createPropertySource(String name, @NonNull EncodedResource resource) throws IOException {
        List<PropertySource<?>> sources = new YamlPropertySourceLoader().load(resource.getResource().getFilename(), resource.getResource());
        return sources.get(0);
    }
}
  1. 创建实体类:
@PropertySource(value = {"classpath:test.yml"}, factory = PropertySourceConfig.class)
@Component
@ConfigurationProperties(prefix = "es")
@Setter
@Getter
public class EsParams {
    private String name;
}

  1. 以上已经完成,以下为测试:
@SpringBootTest
@RunWith(SpringRunner.class)
class EsParamsTest {

    @Resource
    private EsParams esParams;

    @Test
    void testParams() {
        Assertions.assertEquals("elasticsearch", esParams.getName());
    }
}

标签:PropertySource,SpringBoot,配置文件,yml,public,test,class,读取
From: https://www.cnblogs.com/liu-im/p/17677374.html

相关文章

  • Eureka application配置文件
    记录下配置文件,方便以后直接copy。server端server:port:13000spring:application:name:test-eureka-servereureka:server:enable-self-preservation:truerenewal-percent-threshold:0.85eviction-interval-timer-in-ms:60000client:......
  • SpringBoot 下使用Swagger3.0
    swagger3.0和2.x的版本有一些配置是不一样的,故记录下。pom.xml依赖<dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version></dependency>Config.java内容@Configura......
  • SpringBoot--实用开发
    SpringBoot实用开发热部署热部署是指在你修改项目BUG的时候对JSP或JAVA类进行了修改在不重启WEB服务器前提下能让修改生效。但是对配置文件的修改除外!导入springboot开发者工具坐标:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boo......
  • SpringBoot--运维实用
    SpringBoot运维实用篇打包与运行windows打包在maven中双击package打包另外如果打包报utf-8的错,在pom中添加<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><version>2.6</version>&l......
  • SpringBoot--基础
    SpringBoot--基础SpringBoot的设计目的是用来简化Spring应用的初始搭建以及开发过程idea创建springboot入门步骤(需要idea联网)创建一个空项目之后再项目构建中添加springboot相关配置本处的springboot版本为2.7.14,如果maven报错可以自己修改一下版本,最新的3.0版本......
  • AssetBundle打包和读取
    基本信息  创建了项目名有YoyoProject工程,是一个3D模板的工程,使用的是unity2021版本,windows11系统。打包打包路径stringdataPath=Application.dataPath;stringpersistentDataPath=Application.persistentDataPath;stringstreamingAssetsPath=Application.stream......
  • 基于springboot的个人云盘管理系统的设计与实现
    传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装个人云盘管理系统软件来发挥其高效地信息处理的作用,可以规范信息管理流程,让管理工作可以系统化和程序化,同时,个人云盘管理系统的有效运用......
  • 基于springboot流浪动物管理系统
    在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以,对流浪动物信息管理的提升,也为了对流浪动物信息进行更好的维护,流浪动物管理系统的出现就变得水到渠成不可缺少。通过对流浪......
  • python 创建、读取xml 文件
    使用xml.dom.minidom1.创建fromxml.dom.minidomimportDocument#创建xml文件doc=Document()#创建根节点root_node=doc.createElement("root")doc.appendChild(root_node)#创建子节点son_node=doc.createElement("son_node")root_node.appendChild(son......
  • C#读取XSL文件将XML内容转化为指定XML内容
    //加载xsl样式表文件XslCompiledTransformxslt=newXslCompiledTransform();xslt.Load("path/to/your/xsl/file.xsl");//加载XML文件XmlDocumentxmlDoc=newXmlDocument();xmlDoc.Load("path/to/your/xml/file.xml");//......