詳解java.lang.NumberFormatException錯(cuò)誤及解決辦法
前言:
在做后臺(tái)時(shí)用的jsp開(kāi)發(fā),在頁(yè)面向controller傳參時(shí)用String接收的參數(shù),但是數(shù)據(jù)庫(kù)實(shí)體中jies接收該參數(shù)時(shí)是int類型,做了一下強(qiáng)制轉(zhuǎn)換,但是沒(méi)有判斷去空格,結(jié)果頁(yè)面加載時(shí)就報(bào)500錯(cuò)誤了。
錯(cuò)誤截圖:
在報(bào)錯(cuò)后注意分析報(bào)錯(cuò)信息,如上圖提示在ShopController.java 的92行出錯(cuò)了,那么錯(cuò)誤就很容易定位了,去看那里的代碼。
錯(cuò)誤關(guān)鍵字 java.lang.NumberFormatException 這句話明確告訴了我們是數(shù)字格式異常,接著后面有 null 提示,這就告訴我們你當(dāng)前想把 null 轉(zhuǎn)換成數(shù)字類型時(shí)出錯(cuò)了,這樣就很確切了。在傳參的時(shí)候應(yīng)該是Integer類型,而我在后臺(tái)用String類型接收,最后又將String類型給強(qiáng)制轉(zhuǎn)換成Integer類型,在沒(méi)有值得情況下自然是轉(zhuǎn)不了了,所以就有null值了。
具體是哪個(gè)類的哪個(gè)方法的哪一行的錯(cuò)誤了,看下面錯(cuò)誤堆棧,找自己寫(xiě)的第一個(gè)類
com.dxz.controller.ShopController.index(ShopController.java:92)
原來(lái)是 com.dxz.controller.ShopController類的index方法里的第92行出錯(cuò)了。
這樣就定位到了Integer pid=Integer.parseInt(provinceId);具體是 Integer.parseInt(provinceId)時(shí)出的錯(cuò),知道了錯(cuò)誤地方就可以相應(yīng)的解決了
解決這個(gè)很簡(jiǎn)單 ,把參數(shù)用Integer類型來(lái)接收,避免了轉(zhuǎn)換的問(wèn)題,問(wèn)題也就隨之解決了。
到此這篇關(guān)于詳解java.lang.NumberFormatException錯(cuò)誤及解決辦法的文章就介紹到這了,更多相關(guān)java.lang.NumberFormatException錯(cuò)誤內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
struts升級(jí)到2.5.2遇到的問(wèn)題及解決方案(推薦)
原來(lái)的版本是2.3.x,由于安全原因需要升級(jí)到2.5.2。但是在升級(jí)過(guò)程中遇到各種各樣的問(wèn)題,下面小編給大家?guī)?lái)了struts升級(jí)到2.5.2遇到的問(wèn)題及解決方案,需要的朋友參考下吧2016-11-11Mybatis給數(shù)據(jù)庫(kù)敏感字段加解密詳解
這篇文章主要介紹了Mybatis給數(shù)據(jù)庫(kù)敏感字段加解密詳解,為了保護(hù)數(shù)據(jù)庫(kù)敏感字段數(shù)據(jù)安全,有時(shí)候我們需要將敏感數(shù)據(jù)加密入庫(kù),查詢時(shí)再解密成明文,我們可以利用Mybatis自定義TypeHandler來(lái)處理,需要的朋友可以參考下2023-11-11spring導(dǎo)入framework報(bào)紅問(wèn)題
這篇文章主要介紹了spring導(dǎo)入framework報(bào)紅問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07GraalVM?native-image編譯后quarkus的超音速啟動(dòng)
這篇文章主要介紹了經(jīng)過(guò)GraalVM?native-image編譯后的quarkus,來(lái)帶大家驗(yàn)證一下號(hào)稱超音速亞原子的quarkus是否名副其實(shí),有需要的朋友可以借鑒參考下,希望能夠有所包幫助2022-02-02MyBatis啟動(dòng)時(shí)控制臺(tái)無(wú)限輸出日志的原因及解決辦法
這篇文章主要介紹了MyBatis啟動(dòng)時(shí)控制臺(tái)無(wú)限輸出日志的原因及解決辦法的相關(guān)資料,需要的朋友可以參考下2016-07-07微服務(wù)之間如何通過(guò)feign調(diào)用接口上傳文件
這篇文章主要介紹了微服務(wù)之間如何通過(guò)feign調(diào)用接口上傳文件的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06使用sharding-jdbc實(shí)現(xiàn)水平分表的示例代碼
本文主要介紹了sharding-jdbc實(shí)現(xiàn)水平分表,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11