Mybatis resultType異常

當需要查詢返回 List<String> 

1

2

3

<select id="getByIds"  parameterType="java.lang.String"  resultType="java.util.List">

    SELECT l.label_name FROM label l WHERE l.id IN(#{labelIds})

  </select>

1

返回值定義爲 resultType="java.util.List" <br><br>會報錯,需要將返回值改爲:resultType="java.lang.String"

當需要查詢返回 List<Long>

也可以這樣定義 

resultType="java.lang.long"

resultType:

1、基本類型  :resultType=基本類型

2、List類型:   resultType=List中元素的類型

3、Map類型    單條記錄:resultType =map

                          多條記錄:resultType =Map中value的類型

 

mybatis查詢的返回類型爲基礎類型(int、long等),但結果爲null時的異常解決

以 resultType=“int” 爲例,試過把resultType由 int 改爲 Integer ,但還是不行,下面的辦法,從sql語句入手,使用數據庫的空值轉換函數,完美解決:

mysql:

SELECT IFNULL(MAX(SORT),0)AS sort FROM web_d_info

oracle:

SELECT nvl(MAX(SORT),0) as sort FROM web_d_info
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章