背景:

项目数据看板模块会展示交易金额信息,总计起来的金额过大,画面显示过长,所以想将单位转换为万元处理,方式有几种,最简单粗暴的就是在db查询时将结果除以10000,但是考虑sql最好不要进行计算,所以采用一下方法,采用@JsonSerialize注解来实现,下面上代码


注解使用类:

这里展示两种常见场景,按需要使用。发个牢骚,DecimalFormat这个类中有万元到元的设定,也就是乘数值,但是没有除数的值,这样的话还得自己来做计算,希望后续有追加。

public class MoneySerialize extends JsonSerializer<BigDecimal> {public static final MoneySerialize instance = new MoneySerialize();public static final DecimalFormat df = new DecimalFormat("###,##0.00");@Overridepublic void serialize(BigDecimal value, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {if (value != null) {// 单位转换:元->万元jsonGenerator.writeString(df.format(value.divide(new BigDecimal("10000"), 2, BigDecimal.ROUND_HALF_UP)));// 单位转换:万元->元// df.setMultiplier(10000);// jsonGenerator.writeString(df.format(value));}}
}

使用:

直接在实体类的属性上添加@JsonSerialize(using = MoneySerialize.class)注解即可

@Data
public class DealNoticeDetailDto implements Serializable {/*** 成交价格*/@JsonSerialize(using = MoneySerialize.class)private BigDecimal auctionMoney;
}

数字单位转换(例:元->万元)相关推荐

  1. php number_format金钱 价格 格式处理 由分单位转换成元(保留2为小数)

    /*** priceFormat* 价格格式处理** @access public* @param null* @since 1.0* @return object*/ if(!function_ex ...

  2. js和 ts 将大数字金额转换成带单位的数字金额,万,千万,亿,格式化金额数字,格式化成带单位的金额,附ts版代码

    js将大数字金额转换成带单位的数字金额,万,千万,亿, 第一个参数是在转换的数字, 第二个参数是返回的格式 不传第二个参数,返回数字和单位分开的,数组格式,传第二个参数后,返回数组和单位的字符串,这样 ...

  3. labview 上位机软件开发——实用技巧1000例 单位转换VI的巧妙用法

    标题第2例:单位转换VI的巧妙用法 标题labview 上位机软件开发--实用技巧1000例 今天跟大家分享一个工业领域上位机开发的实用小技巧--单位转换VI的巧妙用法 1.真实工况: 楼主做工业领域 ...

  4. 《C#零基础入门之百识百例》(四十四)静态类 -- 温度单位转换

    C#零基础入门 类和对象 -- 静态类 -- 温度转换 前言 一,静态类 1.1 静态构造函数 1.2 遵守规则 二,实例练习 -- 温度单位转换 2.1 题目描述 2.2 问题分析 2.3 参考代码 ...

  5. c++字符数组整数转换中文大写金额的形式_数字大写转换烦,内置格式多缺陷, VBA函数来解难...

    观看视频更直观 在Excel中将数字转换为中文大写或小写,有两种方法,一种是设置数据格式:另一种是使用内置的隐蔽函数NumberString函数. 一.设置数据格式 在Excel中输入数字后,选中单元 ...

  6. Java版 数字金额大写转换

    需求:读入一个浮点数值,将其转化为中文金额的大写形式.如123.45,转化为:壹佰贰拾叁元肆角伍分. 以下是各种情况要完善: 1. 当金额为整数,只表示整数部分,省略小数部分,并添加"整&q ...

  7. js和ts两种 将 小写金额转中文大写汉字,阿拉伯数字金额格式化成中文大写汉字,数字金额转换成财务发票大写中文

    通过 npm i money2cn 安装  支持typescript 使用: import  money2cn  from 'money2cn' const nums = money2cn(23423 ...

  8. C#、winfrom设置金额数字大小写转换

    C#.winfrom金额数字大小写转换 作者:张国军_Suger 开发工具与关键技术:Visual Studio 2015.C#..NET.winfrom 很多时候我们比如金额就需要对数字的小写转换成 ...

  9. 如何把数字金额转换成中文大写

    问题:要求把万亿级别内的浮点数转换成中文大写,例如把数字1112221000060.254400转换成:壹万壹仟壹佰贰拾贰亿贰仟壹佰万零陆拾元零贰角伍分 分析:关键是先把double类型转换成char ...

  10. 把数字金额转换成中文大写数字

    //把数字金额转换成中文大写数字 function changeNumMoneyToChinese(money) { var cnNums = new Array("零", &qu ...

最新文章

  1. 有关C语言指针学习思想的随笔常用形式的总结(原创)
  2. 【RocketMQ工作原理】订阅关系的一致性
  3. nyoj 762:第k个互质数
  4. 设计模式——10.单例模式
  5. Java面试中常问的Spring方面问题(涵七大方向共55道题,含答案)
  6. 【Java】Java对象引用四个级别(强、软、弱、虚)
  7. 听力技巧-真题代练及填空题
  8. 字号计算,字体大小随窗口高度变化
  9. html + CSS
  10. php 监听端口数据客户端ip_PHP获取客户端和服务器端IP
  11. 专利挖掘和撰写(京东技术资质申请和创造专利挖掘)
  12. 心不唤物,物不至,聊聊积极心态重要性
  13. 使用Unity编写传统ARPG游戏的人物操作方式
  14. 怎样在ps中制作对话气泡?一招教你轻松解决
  15. MCGS 根据时间实现动态密码进行登陆
  16. 配F-RCN遇到的问题(hdf5.h: 没有那个文件或目录)及解决
  17. 新三板挂牌和上市的区别在哪
  18. Postgresql opm监控工具部署
  19. android launcher3,Android Launcher3 基本功能分析
  20. 鉴权 前后端常见的几种鉴权方式

热门文章

  1. 远程访问树莓派的摄像头实现远程监控
  2. 计算机组成原理——常用计算单位的转换(时间单位换算s、ms、μs;K、M、G为单位的数值大小)
  3. 论文笔记 Triformer: Triangular, Variable-Specific Attentions for Long SequenceMultivariate Time Series
  4. 全民居家都带不动的AI健身,到底是不是伪命题?
  5. html图表插入ppt
  6. NetCore EF 使用scaffold-dbcontext导致deps.json] does not exist的解决办法
  7. Android Switch禁止手动切换状态
  8. 你有必要不沾计算机一段时间英语,八年级上册英语第一单元背默(人教版)
  9. python 点对点语音,Python(PyS60)实现简单语音整点报时
  10. 神仙打架!传言阿里 P10 赵海平被 P11 多隆判定 3.25 离职,如何评价阿里 P10 赵海平对王垠的面试?...