Jsp页面java.lang.NumberFormatException: For input string: ““错误解决办法

Jsp页面报Java.lang.NumberFormatException: For input string: ""错误解决办法

昨天写代码遇到一个错误,在日志和控制台报一个错误说jsp页面一个出现java.lang.NumberFormatException
当看到这个错误我感觉很可能就是字符串转换成数字类型出现的问题。一般都是String转Long、Integer时,出现转换异常

一般错误原因:

第一种情况
例如前端在传给我数据时时,应该传字符串形式的数字(例如:1),结果传的是一个非数字形式的字符串,这时候,如果后台处理参数时,调用Long.ValueOf(String)或者Long.parseLong(String)方法进行数据类型转换,就会报异常。

因为在调用Long.ValueOf(String)或者Long.parseLong(String)方法进行数据类型转换时,字符串内不能包含除数字之外的字符。

第二种情况
因为字符串的长度也应该有限制,如果超出最大长度也会报异常,要注意字符串形式的数字不能超过19位,因位Long类型的最大值位Long.MAX_VALUE = 9223372036854775807,大于这个值都会出错。

  • 但是检查后台不是这个原因导致的,这时候就要考虑是什么地方的原因了,很显然接下来就应该考虑Jsp页面

错误详情:
错误详情

错误详情

解决办法

  • 当你确定自己后台代码没问题时,多半都是jsp页面出现错误,后来找了半天没发现错误,重写了一下jsp页面的forEach循环就运行正常了, 在仔细对照jsp页面代码之后,发现是自己粗心的错误。因为在model传到页面的的数据是一个List的对象集合,而我直接使用List去调用对象的属性,导致出现了这个异常。因为我已经遍历了对象集合,但是却直接使用List集合来调用对象了,需要将遍历得到的对象去调用对象的属性。

出现错误的位置
错误页面

正确代码
正确页面

感悟

当大家遇到这个错误且确定后台页面没问题时,多半都是自己的jsp页面出现问题了,可以检查一下自己的jsp页面。

  • 3
    点赞
  • 6
    收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
评论 1

打赏作者

Loobeeke

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值