症状:
Mybatis puls 查询返回null或者count为0,停在debug断点,通过打印的sql查询却有数据。
原因:
1、当前开启了事务
2、在本事务中,执行查询之前,有对这部分数据进行删除或者修改操作,导致查询不到。
3、打了断点,拿sql到navicat中去查能查到,是因为在另一个事务中读取到是当前事务开始之前的数据(未删除或未修改)。
结论:
排查自己代码,当前事务中,在执行查询之前是否有删除或修改操作。有的话,可能是删除或修改影响到了查询结果。
如果不是我这个原因导致的,那可能是resultMap或者字段映射对不上之类的比较低级的错误导致的。