Mapper method 'com.autoyol.mapper.trans.AccountLogMapper.getTotalIncomByMemNoLastest attempted to return null from a method with a primitive return type (int).解决方法

1.打开日志输出,降低日志级别。

<AppenderRef ref="console" level="trace"></AppenderRef>  否则看不到报错。。

2.调整mysql语句,不能使用order by limit之类的

<!-- SELECT IFNULL(amt,1) FROM account_log WHERE mem_no=#{value} AND income_type != 4 ORDER BY id DESC LIMIT 1 -->
    <select id="getTotalIncomByMemNoLastest" parameterType="int" resultType="Integer">

        SELECT IFNULL(MAX(amt),1) FROM account_log WHERE id = (SELECT MAX(id) FROM account_log WHERE mem_no=#{value} AND income_type != 4)
    </select>

<!--
    处理非空的情况,同时处理MAX(order_no)订单号的情况。
    SELECT order_no AS orderNo FROM trans WHERE invite_group = #{groupOrderNo} AND is_group=1 AND order_no != #{orderNo} AND STATUS = 21 ORDER BY id ASC LIMIT 1
    -->
    <select id="getTransGroupOrderRestToIsGroup" resultType="java.lang.Long">
        SELECT IFNULL(MAX(order_no),0) AS orderNo FROM trans WHERE id = (
            SELECT IFNULL(MIN(id),0) AS orderNo FROM trans WHERE invite_group=#{groupOrderNo} AND is_group=1 AND order_no != #{orderNo} AND STATUS = 21
        )
    </select>

Mapper method 'com.autoyol.mapper.trans.AccountLogMapper.getTotalIncomByMemNoLastest attempted to return null from a method with a primitive return type (int).解决方法

时间: 2024-10-10 09:22:55

Mapper method 'com.autoyol.mapper.trans.AccountLogMapper.getTotalIncomByMemNoLastest attempted to return null from a method with a primitive return type (int).解决方法的相关文章

attempted to return null from a method with a primitive return type (int).

错误信息: attempted to return null from a method with a primitive return type (int). 错误原因:实际查询sql并没有这个值,出现空值,就会报这个异常. 错误sql(发生问题): select sum(id) from post where post.author = ? 正确sql(解决问题): select IFNULL(sum(id),0) from post where post.author = ? 关键在于使用

attempted to return null from a method with a primitive return type (double)

场景: 服务启动正常,接口调用时出现异常. 业务描述:通过用户标识获取用户目前为止的所有投资收益.但测试使用的用户是新注册的用户,无投资金额. 解决: DEBUG模式跟踪,发现底层mapper.xml 中的 SQL select sum(invest) from db 此时 invest 为空 , sum (null) , 赋值给 double ,所以系统提示异常,尝试把一个 null值复制给 double 类型数据 select IFNULL(sum(invest),0) FROM DB 返回

mybatis使用xml实现发生的异常之一return null from a method with a primitive return type (int)

主要原因: 1.接口的返回值错误 2.接口的xml错误  ( 主要是标签写错了) 在这里我的接口: 发现这句并没有错误,那我再看接口的xml: 很明显的就发现了select这里错误,insert,update,delect这些返回值为int类型,是不用写返回值的: 这里是标签写错了: 修改后的代码: 把resultType去掉: 原文地址:https://www.cnblogs.com/bichen-01/p/11730252.html

关于Cannot assign to &#39;self&#39; outside of a method in the init family解决方法

有时候我们重写父类的init方法时不注意将init后面的第一个字母写成了小写,在这个方法里面又调用父类的初始化方法(self = [super init];)时会报错,错误信息如下:error:Cannot assign to 'self' outside of a method in the init family 原因:只能在init方法中给self赋值,Xcode判断是否为init方法规则:方法返回id,并且名字以init +大写字母开头+其他  为准则.例如:- (id) initWit

IIS7.5上的REST服务的Put操作发生HTTP Error 405.0 - Method Not Allowed 解决方法

WebDAV 是超文本传输协议 (HTTP) 的一组扩展,为 Internet 上计算机之间的编辑和文件管理提供了标准.利用这个协议用户可以通过Web进行远程的基本文件操作,如拷贝.移动.删除等.在IIS 7.0中,WebDAV是作为独立扩展模块,需要单独进行下载,而IIS 7.5中将集成WebDAV,然而WebDav把Put,Delete给咔嚓了.所以在IIS 7.5上部署的RESTful服务(WCF Data Service,WCF Rest Service,ASP.NET Web API,

oauth2(spring security)报错method_not_allowed(Request method &#39;GET&#39; not supported)解决方法

报错信息 <MethodNotAllowed> <error>method_not_allowed</error> <error_description>Request method 'GET' not supported</error_description> </MethodNotAllowed> 39是单引号 原因 默认只支持post 解决方法 下载安装postman工具(或其他post工具) 使用post调用 代码增加get的

Request method &#39;POST&#39; not supported错误和解决方法

在使用SpringBoot的时候,在html页面用form表单post提交数据的时候报错: Request method 'POST' not supported 错误解析: 我是用的前端页面是HTML页面,而HTML文件,它并不支持响应头带有 post 的应答包,所以会报错. 而且在测试的时候进入到了Controller方法内,只是在进行页面跳转的时候,报错. 所以无法完成跳转操作. 解决方法: 若条件允许,使用 jsp 等能够接收 post 应答包的页面文件.使用jsp页面就可以完美解决问题

IDEA找不到程序包 和 request.getServletContext()报错Cannot resolve method &#39;getServletContext()的解决方法

重新装了idea和down了项目却一直报错,在调用request.getServletContext()的方法时一直报Cannot resolve method 'getServletContext()的错误,网上查了好多方法,大多数都是在说是servlet3.0才可以支持此方法,而servlet3.0只有tomcat7以上版本才可以,我检查了我自己的tomcat发现就是3.0,最终找到原因 对于Maven项目要检查pom文件中的servlet引入的是哪个包,我原来写的是这个 <dependen

Authentication method &#39;caching_sha2_password&#39; not supported by any of the av的解决方法

Authentication method 'caching_sha2_password' not supported by any of the av的意思是任何av都不支持身份验证方法“缓存密码” 通常的报这个错误是因为它的身份验证方式是  mysql_native_password 方式,不是caching_sha2_password方式 方法一 如果是通过解压去安装的MySQL 8.0版本 1.找一下看有没有my.ini文件 没有就在你解压密闭的目录下新创建一个my.ini文件 my.i