我正在使用Spring批处理 - 使用数据采集器加载项目列表。对于我的每个读者,他们都会在列表的末尾返回一个额外的空对象。Spring批处理数据读取器在读取项目集合结束时返回额外的空对象?
以前有人看过这个吗?我究竟做错了什么?
我正在使用Spring批处理 - 使用数据采集器加载项目列表。对于我的每个读者,他们都会在列表的末尾返回一个额外的空对象。Spring批处理数据读取器在读取项目集合结束时返回额外的空对象?
以前有人看过这个吗?我究竟做错了什么?
这是正常的行为。
阅读器停在空元素上。 但是要找到一个空元素,你必须找到它。 因此,发布null元素,但最后一个元素和作者不会被调用。
这听起来像你从ItemReader
http://static.springsource.org/spring-batch/apidocs/org/springframework/batch/item/ItemReader.html
实施read()
方法,你要做的就是实现从JdbcCursorItemTeader
的readCursor(ResultSet rs, int currentRow)
方法 - 这将停止这种行为。 http://static.springsource.org/spring-batch/apidocs/org/springframework/batch/item/database/JdbcCursorItemReader.html
您需要提供比此更多的信息。如:数据源是什么?提供一些代码可能会得到更多的牵引力,即使你不得不弄虚作假以得到一个能够说明你的问题的例子。 你可能会发现,只是修补隔离问题将帮助你弄清楚。 – WineSoaked 2010-06-12 02:40:26