话说我出在分页上的bug还真不少。
这个bug是这样的:首先在一个页面中查询出来客户的信息(当然也包括id),然后根据id加载这个客户的订单,我自己做简单的测试的时候,一直都是在客户信息的第一页来操作的,没发现过有什么问题,昨天无意中翻到客户信息的第二页,想加载下第二页客户的订单,这时候就报了个页数错误的异常。
觉得挺奇怪的,我才点的加载客户订单,这时候就能出页数错误的异常?真是奇怪了,遂点了好多次,终于有一次是能够加载订单的,但是大多数时候还是报告页数错误的异常。下个断点吧,又是截不住,于是有点怀疑是自己页面的代码写错了,但是又觉得页面的代码都是一个模板做出来的,能有什么错呢?
于是关闭服务器,将项目取消发布,重新编译,把MyEclipse关了,IE的缓存也清空了……这么一顿折腾下来,发现能够顺利的截住断点了。
这时候,一个奇怪的现象又出现了:只要我在debug状态下,加载客户订单就都是正常的,一旦把断点取消,加载客户订单就基本都报告页数错误。好诡异啊。
这时候,我又一次福至心灵,想到这个系统是有统一的分页的代码的,会不会是因为我翻到了第二页,浏览器默认向服务器发送的当前页数就是2呢?而刚巧我这个客户的数据只有一页。于是在浏览器端加了个JavaScript,把默认的页数改为了1,再次启动程序试一下,嘿嘿好了。
这个bug发现的挺巧的,更巧的是我居然很快就把它解决掉了,嘿嘿。难道真的是自己在经验上有了很大的进步了么?窃喜ING
不过还是不明白为什么修改之前偶尔会出来正常的数据,更不明白为什么我加上个断点就出来的都是正常数据,这个问题,有待研究。