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中没有此类型所以抛异常,改为
<!-- 根据日期来进行计算平局值与 --> <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来进行判断!
以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。
相关文章: