首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java Web 自增主鍵回顯失敗:字符串尾部空格導致 parseInt 異常

     編輯:程式設計綜合問答

現象

修改實體時,自增 ID 字段從請求參數獲取為 "4 "(含尾部空格),調用 Integer.parseInt 拋出 NumberFormatException。

根因

表單提交或前端模板渲染時,ID 值後帶不可見空格(如 <input value="${obj.id} "> 模板多一空格)。

解決方案

  1. 後端去空格:
    
      String idStr = request.getParameter("id").trim();
      int id = Integer.parseInt(idStr);
      
  2. 前端修正模板:檢查 JSP/Thymeleaf/FreeMarker 模板,確保 value="${obj.id}" 無多餘空格。
  3. 通用參數預處理:在 Filter/Interceptor 中對所有參數 trim()。

最佳實踐

  • 數據庫自增主鍵類型用 Long/Integer,避免字符串流轉。
  • 使用 @RequestParam 自動綁定並轉換類型(Spring MVC)。
  • 前端表單用 th:value="${obj.id}" (Thymeleaf) 避免手工拼接。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved