当前位置: 首页 > news >正文

网站正在建设中页面wordpress建自己的网站

网站正在建设中页面,wordpress建自己的网站,木樨园网站建设公司,基于工作过程的商务网站建设:网页制作再来个文章目录 文章目录前言1、自定义配置文件2、配置对象类3、YamlPropertiesSourceFactory下面还有投票,帮忙投个票👍 前言 最近在看某个开源项目代码并准备参与其中,代码过了一遍后发现多个自定义的配置文件用来装载业务配置代替数据库…

在这里插入图片描述
再来个文章目录

文章目录

  • 前言
  • 1、自定义配置文件
  • 2、配置对象类
  • 3、YamlPropertiesSourceFactory

下面还有投票,帮忙投个票👍

前言

最近在看某个开源项目代码并准备参与其中,代码过了一遍后发现多个自定义的配置文件用来装载业务配置代替数据库查询,直接响应给前端,这里简单记录一下实现过程。

我们通常在SpringBoot项目中用配置文件属性时使用@ConfigurationProperties或@Value默认配置文件的属性值,也就是application.yml或者application.properties文件中的属性值。

但是不能全都往默认配置文件里堆的,本文利用@PropertySource和@ConfigurationProperties注解引用其它配置文件的属性值。

1、自定义配置文件

在resources下创建my.yaml文件,“-”用来表示数组类型,一定要注意空格

my:contents:- id: 12121name: nadasd- id: 3333name: vfffff

2、配置对象类

创建配置类对象,在类上添加@Component、@PropertySource、@ConfigurationProperties注解。

@Component是将该类交由spring管理,@PropertySource用来指定配置文件及解析Yaml格式,@ConfigurationProperties是将解析后的配置文件属性自动注入该类的属性。

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;import java.util.ArrayList;
import java.util.List;@Component
@PropertySource(value = "classpath:my.yaml", factory = YamlPropertiesSourceFactory.class)
@ConfigurationProperties(prefix = "my")
public class MyProperties {private List<content> contents = new ArrayList<>();public List<content> getContents() {return contents;}public void setContents(List<content> contents) {this.contents = contents;}}class content {private String id;private String name;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

@PropertySource注解是Spring用于加载配置文件,@PropertySource属性如下:

  • name:默认为空,不指定Spring自动生成
  • value:配置文件
  • ignoreResourceNotFound:没有找到配置文件是否忽略,默认false,4.0版本加入
  • encoding:配置文件编码格式,默认UTF-8 4.3版本才加入
  • factory:配置文件解析工厂,默认:PropertySourceFactory.class 4.3版本才加入,如果是之前的版本就需要手动注入配置文件解析Bean

Spring Boot 默认不支持@PropertySource读取yaml 文件,需要自定义PropertySourceFactory进行解析。

3、YamlPropertiesSourceFactory

创建YamlPropertiesSourceFactory类用来解析Yaml格式的文件。

import org.springframework.boot.env.YamlPropertySourceLoader;
import org.springframework.core.env.PropertySource;
import org.springframework.core.io.support.EncodedResource;
import org.springframework.core.io.support.PropertySourceFactory;import java.io.IOException;
import java.util.List;
import java.util.Optional;public class YamlPropertiesSourceFactory implements PropertySourceFactory {@Overridepublic PropertySource<?> createPropertySource(String name, EncodedResource resource) throws IOException {String resourceName = Optional.ofNullable(name).orElse(resource.getResource().getFilename());List<PropertySource<?>> yamlSources = new YamlPropertySourceLoader().load(resourceName, resource.getResource());return yamlSources.get(0);}}
http://www.yayakq.cn/news/821750/

相关文章:

  • 厦门市建设工程造价协会官方网站资产管理系统源码
  • 网站被k后换域名 做301之外_之前发的外链怎么办江西建设厅培训网站
  • 郑州做网站要多少钱怎么样创建网站
  • 在国外服务器上做网站项目如何赚钱一米设计公司
  • diango做的网站怎么用如何发布网页
  • 西丽做网站要制作自己的网站需要什么材料
  • 江苏省建设信息网站wordpress优惠码
  • 西安建设工程交易网站买的网站模板怎么做
  • 常熟建设局网站首页wordpress首页显示链接
  • 免费个人网站注册方法国家重大建设项目库填报网站
  • 建筑网站招聘福州网站建设外包
  • 合肥网站建设哪家专业中国农村建设投资有限公司网站首页
  • html网站源码莱芜金点子信息港最新招聘
  • wap 网站 手机在线制作图片水印文字
  • 建设电子商务网站必须首先确定的是c2c商城网站建设公司
  • 网站开发教科书阿里云用ip做网站
  • 如何做自己的加盟网站信誉好的微网站建设
  • 比wordpress更好的网站程序win的wordpress
  • 国外做调查的网站网站建设公司词
  • 手表网网站怎样给网站做流量
  • 济南网站建设选聚搜网络一xwordpress主题转html
  • 温州网站快速排名广州哪里有做网站推广
  • 免费建设展示网站网站网站开发的
  • 网站建设信 信科网络网易考拉的网站建设
  • 做t-shirt素材网站wordpress登陆不跳转
  • 常德外贸网站优化推广手机端关键词排名优化软件
  • 专业网站设计网站wordpress主题添加中文版
  • 房产网站定制建设一个网站可以放视频的多少钱
  • 大观网站建设淘宝seo
  • 深圳个人网站制作10有免费建网站