如何用逗号将JsonFormat长值

时间:2019-04-04 16:24:50

标签: json rest spring-mvc jackson jackson-modules

我创建了一个允许数字值的前端。当然,用户应输入的值应严格为数字值。那不是小数,没有逗号,没有$,没有其他值,如果需要,我可以在UI上控制它。

但是,如果用户确实在此数字框中输入了自由文本,我正在寻找一种简单的方法将123,456转换为仅123456。

我正在使用Spring 5,Spring MVC,并且如果我将其传递给'123456',则REST控制器可以正常工作,但是,因为POJO具有较长的值,所以我想知道我是否可以与Jackson FasterXML一起使用@JsonFormat注释取123,456并将其转换为123456 ????

比方说有人输入123,456,789.00作为值,我们知道可以将其转换为long,所以我想知道是否可以在此字段上使用@JSonFormat批注以使其转换为123456789 ???

在POJO的设置者中有什么我可以做的吗?

我想我也可以只更改POJO以接受一个String值,然后删除所有逗号,所有小数点,删除$,删除任何其他非数字值,然后将其作为全部。

谢谢!

1 个答案:

答案 0 :(得分:1)

我怕告诉你,但是@JsonFormat无法实现。

问题How to deserialize a float value with a localized decimal separator with Jackson的前两个答案描述了两种可能的方法,它们是: