Java编程经验——BigDecimal转换为Json发生截断

 时间:2026-02-12 14:24:43

1、错误的示例如下:

Map<String,Object>map=new HashMap<String,Object>();

map.put("id",new BigDecimal("123456789"));

return json(map);

当转换为json数据时,{"id":123457000},id的值和原来的BigDecimal值不等。如果再用前端获取的值来反查数据数据时就会有问题,因为id值并不等于原来的123456789!

2、那这个问题是怎么产生的呢?其实是由于js对数据进行处理的时候,对数据进行了截断。要正确的处理,那么可以通过显示的把BigDecimal转化为String类型,在转化为json数据传给前端就ok了!

来看看具体用法吧:

Map<String,Object>map=new HashMap<String,Object>();

map.put("id",String.valueOf(new BigDecimal("123456789")));

return json(map);

通过String的valueOf方法显示的把值转化为String类型,就能避免前端的数据值截断问题了。

  • 胡萝卜洋葱豆皮肉的做法
  • 钢贸商如何参与期货交易?
  • 装修房子时说的玄关是什么意思
  • 《燕云台》三姐妹结局是什么
  • 就该这样做清炒耳菜
  • 热门搜索
    感恩父母手抄报 交通安全手抄报图片 教师节手抄报 创建文明城市手抄报 关于中秋节的手抄报 健康手抄报 关于春节的手抄报 植树节手抄报图片 重阳节手抄报 手抄报模板简单又漂亮