![c1a8fc69d78a2da2bd42a59e94f6c0ad.png](https://i-blog.csdnimg.cn/blog_migrate/bbf716d4a6deb5bccb917d763da60334.png)
强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan
【前言】
最近收到一个需求,在管理后台对系统中的金额进行操作时,对操作的金额需要进行相关校验,如果不校验,在进行相关的计算时就可能会出问题。
【BigDecimal 校验格式】
一、业务需求
前端接收到金额传给后端时需要对金额的格式进行校验,校验规则:如果有小数,则小数的位数不能超过两位;如:
1888 符合要求
1888.1 符合要求
1888.12 符合要求
1888.123 不符合要求
二、相关代码及相应测试
1、代码
(1)工具类
/*
(2)测试的Request
/*
(3)测试Controller
/*
2、测试结果
(1)符合条件:
![b517eb9cf06db02f4a9bc70d4c010006.png](https://i-blog.csdnimg.cn/blog_migrate/68f804ffbace604fdf0204fa55f4641a.jpeg)
(2)不符合条件
![fba66364399fa4e471e197928b4d749b.png](https://i-blog.csdnimg.cn/blog_migrate/009b68661832e7d833103391261e6f2b.jpeg)
【总结】
1、金额一定要有检验,不然进入系统中不符合要求的数据,在进行相关计算的时候会出问题,有时每笔订单只差几分但是订单量多了,差的钱就多了;
2、做程序需时刻谨慎,什么时候都不可大意。