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

深圳模板建站代理西安网站建设陕icp

深圳模板建站代理,西安网站建设陕icp,企业网站建设网站,深圳华强北电子商城springboot去读yml配置文件中的属性值 springboot去读yml配置文件中的属性值读取yml中的数组配置注入方式1:注入方式2:注入方式3:测试代码:yml文件配置方式1:以逗号形式分割多个值yml文件配置方式2:使用列表…

springboot去读yml配置文件中的属性值

  • springboot去读yml配置文件中的属性值
    • 读取yml中的数组配置
      • 注入方式1:
      • 注入方式2:
      • 注入方式3:
      • 测试代码:
      • yml文件配置方式1:以逗号形式分割多个值
      • yml文件配置方式2:使用列表的形式配置

springboot去读yml配置文件中的属性值

读取yml中的数组配置

注入方式1:

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;@Data
@Component
@ConfigurationProperties(prefix = "my")
public class MyProperties {private String[] array;}

注入方式2:

【注意:使用配置类 + @ConfigurationProperties 方式时,类中的属性名称需要和yml文件中的叶子节点属性字段key保持一致。yml中的中划线会指定映射成 Bean 对象的 驼峰。例如:yml中 district-code,会自动映射到java类中的 districtCode 属性上】

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;import java.util.List;@Data
@Component
@ConfigurationProperties(prefix = "my")
public class MyProperties2 {private List<String> array;
}

注入方式3:

在spring容器管理的类里使用@value注解注入yml中属性值

 @Value("#{'${my.array}'}") // 注意这里的单引号和花括号的使用private List<String> myArray;

或者

 @Value("${my.array}")private List<String> syncDataDistrictCodes;

以上两种没有默认值,如果yml中没有配置,程序启动时会报错:

Could not resolve placeholder 'my.array' in value "#{'${my.array}'}"

再或者(注意这里边带冒号,冒号后边指定默认值,如果只写了个冒号,没有指定默认值,List注入的是 空的列表,不是null)

 @Value("${my.array:}")private List<String> syncDataDistrictCodes;

测试代码:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;@RestController
@RequestMapping("test")
public class TestController {@Value("#{'${my.array}'}") // 注意这里的单引号和花括号的使用private List<String> myArray;@Resourceprivate MyProperties myProperties;@Resourceprivate MyProperties2 myProperties2;@GetMapping("/getConfig")public Object getConfig() {Map<String, Object> resMap = new LinkedHashMap<>();resMap.put("@value注入", myArray);resMap.put("配置类注入myProperties-myArray", myProperties.getArray());resMap.put("配置类注入myProperties2-strList", myProperties2.getArray());return resMap;}
}

yml文件配置方式1:以逗号形式分割多个值

my:array: value1,value2,value3

请求测试接口输出结果:

{"@value注入": ["value1","value2","value3"],"配置类注入myProperties-myArray": ["value1","value2","value3"],"配置类注入myProperties2-strList": ["value1","value2","value3"]
}

总结:三种注入方式均可正常注入

yml文件配置方式2:使用列表的形式配置

my:array:- value1- value2- value3

注入方式3的代码加上后,项目无法启动,报错:

Could not resolve placeholder 'my.array' in value "#{'${my.array}'}"

注释掉该方式的代码,继续测试使用配置类方式注入的两个方式,
调用测试接口,结果输出如下:配置类中使用数据注入正常,使用 List 无法正常注入

{"配置类注入myProperties-myArray": ["value1","value2","value3"],"配置类注入myProperties2-strList": ["value1","value2","value3"]
}

总结:
1、使用@value注解方式注入 程序无法启动;
2、使用 配置类的2种均可可正常注入;
tips:复杂的属性配置建议使用配置类进行属性注入


文章转载自:

http://oID35axF.bxbnf.cn
http://Bv76IvPu.bxbnf.cn
http://yKhi2hm4.bxbnf.cn
http://ACcR83w3.bxbnf.cn
http://BmhrUkld.bxbnf.cn
http://8BKCkPk4.bxbnf.cn
http://Y2UMtKLa.bxbnf.cn
http://YtG0b8zv.bxbnf.cn
http://BIUlksMy.bxbnf.cn
http://OqLIaLKa.bxbnf.cn
http://Wf3BsxYq.bxbnf.cn
http://18cP1cLz.bxbnf.cn
http://QOPlvsma.bxbnf.cn
http://4yQ2COg3.bxbnf.cn
http://TpaI8CkI.bxbnf.cn
http://ztGsyFSC.bxbnf.cn
http://WKzgD612.bxbnf.cn
http://bk8eRanO.bxbnf.cn
http://zE9pNHa3.bxbnf.cn
http://SAQEyrm6.bxbnf.cn
http://o7MLLXDU.bxbnf.cn
http://l5UtnYuI.bxbnf.cn
http://GJClFkU5.bxbnf.cn
http://4EEj4YsP.bxbnf.cn
http://q77w4EAB.bxbnf.cn
http://Dhs2pzur.bxbnf.cn
http://jeDHmNq0.bxbnf.cn
http://A1Erret1.bxbnf.cn
http://sNH876Pz.bxbnf.cn
http://AMA8H90E.bxbnf.cn
http://www.dtcms.com/wzjs/621252.html

相关文章:

  • wordpress建的网站打开太慢做地产网站哪家好
  • 政务网站无障碍建设分享站wordpress主题
  • 网站开发需要什么软件有哪些三亚做网站的公司
  • 360网站排名怎么做wordpress自带数据库优化
  • 做网站的公司杭州ppt做的好的有哪些网站有哪些
  • 信誉好的邢台做网站汝州住房和城乡建设局网站
  • 上海企业建设网站报价wordpress开启伪静态无法登陆
  • 网站即将 模板游览器大全
  • 律师事务所东莞网站建设事业单位网站建设方案
  • 整站优化快速排名做图片赚钱的网站
  • 别人做的网站怎么打开青海省交通建设工程质量监督站网站
  • 材料信息价查询网站wordpress4.7 自豪
  • 绥中做网站招聘网站如何做薪酬报告
  • 三门峡建设网站哪家好百度的广告策略
  • 软件培训教程六安企业网站seo多少钱
  • 青岛网站搭建公司哪家好网站备案掉了怎么办
  • vr看房网站开发费用网站开发需要的工具
  • 建设网站需要准备什么手续一个公网ip可以做几个网站
  • 梅林做网站wordpress 总数 函数
  • 网站备案审核通过后saas电商建站系统
  • 便宜做网站怎么样做网站的实训报告
  • 做网站引用没有版权的歌曲新零售模式具体怎么做啊
  • 上海外贸网站建设wordpress采集新浪博客
  • 手机在线制作网站湛江专业自助建站详细解读
  • 宁化县建设局网站游戏网站建设需要多少钱
  • 门户网站建设步骤网站建设提成方案
  • 做培训的网站建筑公司网站建设方案
  • 简单网站html模板下载地址成都建设网站报价
  • shopex网站长沙中企动力怎么样
  • 网站诊断示例什么the wordpress