今天做支付模块,处理金额的时候,发现存储的bigDecimal("0.1"),存储到数据库中变为了0.。

如下图:

笔记——BigDecimal存储到数据库时decimal小数自动变为0

 检查了一下日志,发现存储的数据的确没有问题,因此将问题的根源确定到了数据库的头上。

后来才发现,在建表的时候,将小数点默认为0了,如下图。

笔记——BigDecimal存储到数据库时decimal小数自动变为0

这真是太呆瓜了。果断改了为了4。

笔记——BigDecimal存储到数据库时decimal小数自动变为0

现在就没有问题了。

笔记——BigDecimal存储到数据库时decimal小数自动变为0

所以在使用decimal类型的数据的时候,一定要记得精度的设置,否则就像我一样呆瓜咯!

相关文章:

  • 2021-08-10
  • 2023-03-08
  • 2021-07-12
  • 2022-12-23
  • 2021-12-13
  • 2021-08-21
  • 2021-11-09
猜你喜欢
  • 2021-09-10
  • 2022-12-23
  • 2022-12-23
  • 2021-10-20
  • 2021-12-12
  • 2021-06-29
  • 2021-12-02
相关资源
相似解决方案