NumberFormatException: multiple points

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NumberFormatException: multiple points相关的知识,希望对你有一定的参考价值。

问题描述:

有两个项目,一个ssmp、一个性能数据提供perf-provider ,后者给前者提供rest api;

突然有一天,来了新需求,ssmp在短时间内需要发送大量的rest请求,请求中有一个

时间参数,传到后台做时间格式化时开始报错:

严重: Servlet.service() for servlet [dispatcher] in context with path [/storage-performance-provider] threw exception [Request processing failed; nested exception is java.lang.NumberFormatException: multiple points] with root cause
java.lang.NumberFormatException: multiple points


但是调试发现传过来的时间没问题,一时一头雾水,想看源码,觉得太费时间,结果在度娘上搜了下发现有同僚碰到过,说是:

多线程方法中使用了共享变量SimpleDateFormat,报如下错误:
 Java.lang.NumberFormatException: multiple points
 at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1084
原因:
SimpleDateFormat是线程不安全的,切忌切忌!
解决:
在线程方法中,new SimpleDateFormat();
 
例:
       SimpleDateFormat sdf = new SimpleDateFormat();

  而回顾自己的代码中确实有一个静态的SimpleDateFormat实例,至此问题明了。

  但还有一个问题: provider中的rest api怎么会发生多线程,先留着吧


以上是关于NumberFormatException: multiple points的主要内容,如果未能解决你的问题,请参考以下文章

在预期时处理 NumberFormatException 的正确方法是啥?

Android - NumberFormatException 问题

如何防止 java.lang.NumberFormatException:对于输入字符串:“N/A”?

java.lang.NumberFormatException 和 SystemDecimalSeparator

为啥“prepareCall”会抛出 NumberFormatException?

声纳质量门插件抛出 numberFormatException