SpringBoot 如何编写配置文件

网友投稿 658 2023-03-07

SpringBoot 如何编写配置文件

SpringBoot 如何编写配置文件

我们经常在项目开放中需要进行很多配置, 那么这些配置基本上都是动态的, 如果我直接写在代码中, 修改起来很麻烦, 如果该配置在多处进行引用啦, 你估计会杀了写代码的人。

那么我们在使用SpringBoot的时候, 也是需要进行配置文件编写的。在spirngBoot里面, 可以有两种方式声明配置

1、直接编写配置文件 然后从配置文件里面获取

2、编写配置文件 然后编写bean, 通过注解注入到bean里面 获取的时候从bean里面获取

配置文件编写可以有多种, 例如我们常见的有: xml、properties、json、yaml.....

我们这里就使用常见的properties文件来写

编写配置文件,从配置文件里面获取

创建配置文件

使用配置项

注解说明

@PropertySource({"classpath:config/web.properties"}) //指定配置文件

@Value("${site.name}") // 获取配置项 value

效果

编写配置文件, 从bean里面获取

编写bean, WebSetting.java

package com.example.demo.domain;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.boot.context.properties.ConfigurationProperties;

import org.springframework.context.annotation.PropertySource;

import org.springframework.stereotype.Component;

@Component

@PropertySource(value = "classpath:config/web.properties", encoding = "utf-8")

@ConfigurationProperties(prefix = "site") // 这个可以指定前缀 只要成员属性能对上就行 也可以不指定 使用@Value来获取

public class WebSetting {

@Value("${site.name}")

private String siteName;

@Value("${site.desc}")

private String siteDesc;

@Value("${site.domain}")

private String siteDomain;

// 对上了可以不用@Value

private String test;

public String getTest() {

return test;

}

public void setTest(String test) {

this.test = test;

}

public String getSiteName() {

return siteName;

}

public void setSiteName(String siteName) {

this.siteName = siteName;

}

public String getSiteDesc() {

return siteDesc;

}

public void setSiteDesc(String siteDesc) {

this.siteDesc = siteDesc;

}

public String getSiteDomain() {

return siteDomain;

}

public void setSiteDomain(String siteDomain) {

this.siteDomain = siteDomain;

}

}

config/web.properties

site.name=憧憬

site.domain=aoppp.com

site.desc=这是一个技术分享的博客!

site.test=test

获取配置 效果

需要注意点

1、配置文件注入失败,出现Couldhttp:// not resolve placeholder

   解决:根据springboot启动流程,会有自动扫描包没有扫描到相关注解,

   默认Spring框架实现会从声明@ComponentScan所在的类的package进行扫描,来自动注入,因此启动类最好放在根路径下面,或者指定扫描包范围,spring-boot扫描启动类对应的目录和子目录

2、注入bean的方式,属性名称和配置文件里面的key一一对应,就用加@Value 这个注解,如果不一样,就要加@value("${XXX}")

以上就是SpringBoot 如何编写配置文件的详细内容,更多关于SpringBoot 编写配置文件的资料请关注我们其它相关文章!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信电脑登录怎打开小程序(电脑登陆微信如何打开小程序)
下一篇:mybatis的if判断不要使用boolean值的说明
相关文章

 发表评论

暂时没有评论,来抢沙发吧~