分页查询中,整除问题处理

博客围绕Java导出数据功能展开,当数据超500条会邮件发送给操作人,但有操作人收不到。经测试排除账号、缓存等问题,发现总条数为1000整数倍时,会多请求一次致后端数据为null,且未捕捉空指针异常。解决办法是计算请求次数时避免整除处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

有个导出数据功能,超过500条就自动转为发送邮件给操作人,但是某位操作人操作很多次都无法收到邮件。通过直接调接口测试,发现增加某个条件之后就可以导出,排除账号问题,缓存问题,以及日志当中没有记录报错的问题。找了很久,后来发现,每次导出不发邮件的数据总条数都是1000的整数倍,也是巧了。。。。
后来查看后端日志发现,当总条数为1000的整数倍N的时候,会请求N+1次,导致后端数据返回为null,循环添加列表时,没有捕捉到空指针异常,导致程序终端而没有记录。

解决方式

在计算请求次数时,避免出现整除处理,总数为total,每页请求条数为pageSize,那么计算请求次数n时:

int n =(total + (pageSize-1)) / pageSize

真是个奇奇怪怪可可爱爱的问题吖~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值