Java MyBatis 查詢 SQL 返回 int 為 Null 如何處理?

Java MyBatis 查詢 SQL 返回 int 為 Null 如何處理?

Java查詢sql時返回intNULL的處理

當使用mybatis查詢sql語句時,如果期望返回一個int值,但實際返回了一個null值,會導致異常。

以下給出兩種可能的解決方案:

  1. 修改返回值類型

將查詢方法的返回值類型從int修改為Integer,這樣即使數據庫中沒有數據也不會拋出異常。在業務代碼中,可以檢查返回的integer值是否為null,將其轉換為0或其他默認值。

立即學習Java免費學習筆記(深入)”;

@select("select max(id) from user") integer maxid();
  1. 使用數據庫函數

sql語句中使用數據庫函數,如ifnull或coalesce,來處理null值。例如:

@Select("SELECT max(id) FROM user") @Options(resultType = int.class, useGeneratedKeys = true) int maxIdWithJdbc();

sql語句中使用ifnull(max(id), 0)表達式,這樣如果沒有數據,將返回0,而不是null值。

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享