mybatis 如何通過resultMap 返回long
<resultMap type='java.lang.Long'> <result column='budget' property='budget' javaType='long'/> </resultMap> mybatis long 類型返回為null報異常
Mapper method ’com.mpn.dao.TWeatherMapper.avgWeatherTemperature attempted to return null from a method with a primitive return type (long).
<select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT IFNULL(AVG(WeatherTemperature),0) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select> <select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT SUM(WeatherTemperature) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select> <select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT IFNULL(AVG(WeatherHumidity),0) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select>
由于返回為空long中沒有此類型所以拋異常,改為
<!-- 根據(jù)日期來進行計算平局值與 --> <select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT IFNULL(AVG(WeatherTemperature),0) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select> <select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT IFNULL(SUM(WeatherTemperature),0) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select> <select resultType='java.lang.Long' parameterType='java.lang.String' >SELECT IFNULL(AVG(WeatherHumidity),0) AS OrderAverage FROM t_weather WHERE WeatherDate= #{date,jdbcType=VARCHAR}; </select>
用IFNULL來進行判斷!
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. DB2 Web 服務提供者的安全性(3)(1)2. mysql啟動時報錯 ERROR! Manager of pid-file quit without3. 如何手動刪除 SQL Server 2000 默認實例、命名實例或虛擬實例4. xp sp2 + sql server 2000 developer環(huán)境開1433端口5. 解決Mybatis中mapper的ID沖突問題6. SQL Server 2008通過端口1433連接到主機127.0.0.1的TCP/IP連接失敗7. 關(guān)于if exists的用法及說明8. DB2 Spatial Extender 性能調(diào)優(yōu)(2)(1)9. MySQL性能優(yōu)化之一條SQL在MySQL中執(zhí)行的過程詳解10. Oracle數(shù)據(jù)遷移MySQL的三種簡單方法
