问题:在一个工具类中,通过@Value来映射配置文件的值,得到的总是null

原因:不能用new工具类的方式,应该是用容器注册(@Autowried)的方式使用此工具类,就能得到配置文件里的值

上代码:

工具类:

package com.***.***.utils;import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import system.Decimal;import java.math.BigDecimal;@Component
public class RoundCalculationUtil {@Value("${***.round.calculation}")private String calculationWay;public BigDecimal reCalculateAmount(BigDecimal amount){if(calculationWay.equals("currencyround")){return currencyRound(amount);}else {return round(amount);}}public BigDecimal round(BigDecimal amount) {BigDecimal result = amount.setScale(0, BigDecimal.ROUND_DOWN);BigDecimal lastRound2 = amount.setScale(2, BigDecimal.ROUND_DOWN).subtract(result);if (lastRound2.compareTo(new BigDecimal("0.50")) >= 0) {result = result.add(new BigDecimal("1"));}return result;}public BigDecimal currencyRound(BigDecimal amount){BigDecimal result = amount.setScale(2,BigDecimal.ROUND_DOWN);BigDecimal firstRound4=amount.setScale(4,BigDecimal.ROUND_DOWN);BigDecimal lastRound2=firstRound4.subtract(firstRound4.setScale(2,BigDecimal.ROUND_DOWN));if(lastRound2.compareTo(new BigDecimal("0.0005"))>=0){result=result.add(new BigDecimal("0.01"));}return result;}}

调用的地方

@AutowiredRoundCalculationUtil roundCalculationUtil;@RequestMapping(value = "/roundtest", method = RequestMethod.GET)public ResponseData<String> roundTest(@RequestParam(value = "amount", required = true, defaultValue = "100.1111") BigDecimal amount,@RequestParam(value = "roundcalculation", required = false, defaultValue = "currencyround") String roundcalculation) {try {BigDecimal result=roundCalculationUtil.reCalculateAmount(amount);//BigDecimal result=new RoundCalculationUtil ().reCalculateAmount(amount);//will get null from .properties fileDecimalFormat df = new DecimalFormat("0.00");return new ResponseData(NotificationMsg.SUCCESS, df.format(result));} catch (Exception e) {logger.error(e);return new ResponseData(NotificationMsg.FAILED, e);}}

spring boot yml 文件的新的配置@value无法读取相关推荐

  1. Spring boot yml文件的书写格式

    Spring boot yml文件的书写格式 使用ide 创建好spring boot文件格式后https://blog.csdn.net/weixin_42292697/article/detail ...

  2. mybatis + spring boot + yml 配置,告别XML

    1第一步配置yml文件 2第二部配置Spring boot启动类 3-spring-boot+mybatis动态sql http://blog.csdn.net/zhugeyangyang1994/a ...

  3. Spring Boot教程(一)注解配置与EhCache使用

    2019独角兽企业重金招聘Python工程师标准>>> 快速入门 首先,下载样例工程chapter3-2-2.本例通过spring-data-jpa实现了对User用户表的一些操作, ...

  4. Spring Boot(一) 自动装配--约定大于配置

    欢迎去我的个人博客--晓坞坐坐,里面有很多有趣的文章,不止是技术.www.lixiaodongisme.com 随着spring体系的发展,我们在开发时需要配置整合的东西也越来越多,在进行开发时,繁琐 ...

  5. spring boot 字体文件等静态资源无法获取

    spring boot 字体文件等静态资源无法获取 原因 原因maven打包时会过滤掉一些静态文件 解决办法 在pom.xml文件中配置静态资源过滤,然后再放行静态资源,这样就能让maven识别到那些 ...

  6. 项目_功能模块_基于Spring Boot的文件上传下载功能的设计与实现

    文章目录 基于Spring Boot的文件上传下载功能模块的设计与实现 1.前言 2.技术栈 3.关键源码 4.实现效果 4.1.登录 4.2.文件列表 4.3.上传文件测试 4.3.1.测试图片 4 ...

  7. yml 文件连接sql数据库配置

    yml 文件连接sql数据库配置 spring: datasource: #driver-class-name: com.mysql.cj.jdbc.Driver #驱动注释,采用默认的方式 url: ...

  8. Spring Boot 2.4 对多环境配置的支持更改

    在目前最新的Spring Boot 2.4版本中,对配置的加载机制做了较大的调整.相关的问题最近也被问的比较多,所以今天就花点时间,给大家讲讲Spring Boot 2.4的多环境配置较之前版本有哪些 ...

  9. Spring Boot Profile使用详解及配置源码解析

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 二师兄 来源 | 程序新视界 在实践的过程中我 ...

最新文章

  1. iOS开发的库的列表,不完全是开源库
  2. 第二天2017/03/29: 字符串操作
  3. Android Studio 运行模拟器时提示 “/dev/kvm device: permission denied”
  4. 机器学习(十二)朴素贝叶斯分类
  5. 复述-简历-面试-常见问答整理
  6. python中如何调用类_python中如何调用类的方法
  7. java: Internal error in the mapping processor: java.lang.NullPointerException问题解决
  8. SAP HANA XS 专栏
  9. JAVA指定区域内截图_Java+Selenium根据元素创建指定区域截图——Element快照
  10. 5G的前传和回传是什么
  11. Latex表格排版(三个表格并列、单元格内容自动换行)
  12. 抖音直播带货数据统计,抖音直播带货复盘必看的4个数据
  13. 苹果手机输入汉字显示拼音和汉字问题
  14. iOS-马甲包审核以及常见审核问题
  15. 容器编排工具—Kubernetes
  16. 阿里、有道科大讯飞齐为荣耀Magic2打call,透露YOYO想不到的技能
  17. B站收藏 6.1w !GitHub 标星 3.9k !这门神课拯救了我薄弱的计算机基础
  18. VC++创建个性的对话框之MFC篇(转)
  19. leetcode系列--680.验证回文字符串 Ⅱ
  20. 硬盘故障案例分享——硬盘丢失及容量丢失

热门文章

  1. 华为无线WiFi配置802.1x认证
  2. 2017年11场下半年热门电子商务相关会议电商峰会合集
  3. 【 ASUS ac-1200刷openwrt】
  4. Unity人工智能AI编程知识
  5. webgame 转(一篇炮哄非处女的狂文)<3>
  6. 详细聊TTL电平、RS232接口和RS485接口
  7. CentOS美化大法(compiz+amd-driver)
  8. 辽宁计算机高职院校有哪些,2019年辽宁省内高职院校有哪些(高职院校一览表)...
  9. 删除排序数组的重复项
  10. 实践与分享:可激活Windows 7旗舰版、专业版、家庭高级版、家庭普通版的“Retail Key”...