关于Class MyBatisPagingItemReader 读取数据只读第一条分页数据就结束了问题

都是单条单表数据进行导入使用的JdbcPagingItemReader设置分页参数,就可以分页读取。现在导入数据需要维护层级关系,使用jdbc完全不可以满足关系
进而选择MyBatisPagingItemReader, 使用mabatis维持层级关系,问题来了:当我设置分页参数为500的时候,返回的结果list是420,然后springBatch就没有继续往下读取了?


解决办法: 使用联合查询的时候,设置了分页参数是500,必须保证返回结果是500.当少于了500 batch会判定为最后一页,标记读取结束,程序读取就结束了


问题2:项目中会出现sql不报错(如果sql报错,会有日志打印,debug模式),但是springBatch查不出结果?最坑爹的日志也没有报错?

解决思路:这个原因很有可能是、resultMap中对应字段和实体中的对应字段不匹配。这个只能逐个检查了。(这个小问题坑了我好几个小时)



这个是修正后的xml  分页查询代码。必须保证left join 左边是500条 (不重复)订单记录
 
  
  
  resultMap  如下
  
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 

  
 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 

  
   
 
   
 


你可能感兴趣的:(JAVASE,mybatis)