java中BigDecimal转json精确小数点的问题

项目使用了 spring boot 作为基础机构,默认 json 使用了 jackson,处理如下

创建一个类用户处理 BigDecimal 小数点精确的问题

java 复制代码
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;

import java.io.IOException;
import java.math.BigDecimal;

public class BigDecimalSerialize extends JsonSerializer {

    @Override
    public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
        if (o != null && o instanceof BigDecimal) {
            BigDecimal bigDecomal = (BigDecimal) o;
            jsonGenerator.writeString(bigDecomal.setScale(2, BigDecimal.ROUND_DOWN) + "");
        }
    }
}

然后在代码中添加如下代码

java 复制代码
@JsonSerialize(using = BigDecimalSerialize.class)
private BigDecimal cmpayNakedPrice;

执行正常

相关推荐
goTsHgo21 分钟前
Spring Boot 自动装配原理详解
java·spring boot
卑微的Coder29 分钟前
JMeter同步定时器 模拟多用户并发访问场景
java·jmeter·压力测试
pjx98739 分钟前
微服务的“导航系统”:使用Spring Cloud Eureka实现服务注册与发现
java·spring cloud·微服务·eureka
多多*1 小时前
算法竞赛相关 Java 二分模版
java·开发语言·数据结构·数据库·sql·算法·oracle
爱喝酸奶的桃酥1 小时前
MYSQL数据库集群高可用和数据监控平台
java·数据库·mysql
唐僧洗头爱飘柔95272 小时前
【SSM-SSM整合】将Spring、SpringMVC、Mybatis三者进行整合;本文阐述了几个核心原理知识点,附带对应的源码以及描述解析
java·spring·mybatis·springmvc·动态代理·ioc容器·视图控制器
骑牛小道士2 小时前
Java基础 集合框架 Collection接口和抽象类AbstractCollection
java
alden_ygq3 小时前
当java进程内存使用超过jvm设置大小会发生什么?
java·开发语言·jvm
triticale3 小时前
【Java】网络编程(Socket)
java·网络·socket
淘源码d3 小时前
什么是ERP?ERP有哪些功能?小微企业ERP系统源码,SpringBoot+Vue+ElementUI+UniAPP
java·源码·erp·erp源码·企业资源计划·企业erp·工厂erp