我正在寻找一种方法来禁用 spring batch 的 skip-limit,我尝试为 skip-limit 指定一个值“0”,但我不接受。这是我的用例:
我的 batch.xml
有 skip-limit="${limit_val}"
我想将 ${limit_val}<
设置为 0,这意味着默认情况下任何异常都会失败。看到失败后,我可以查看原因并决定是否可以跳过记录。如果可以跳过,我希望能够覆盖 ${limit_val}<
的值为 1,然后重新运行批处理。
对于如何实现这一点有什么帮助吗?
最佳答案
您是否尝试过使用 skip-policy 属性? 在step下的chunk中定义skip-policy="mySkipPolicy",然后给出skipPolicy bean的定义。
通过实现 SkipPolicy 接口(interface)提供 skipPolicy bean 实现。
public class MySkipPolicy implements SkipPolicy
{
private int limit;
public boolean shouldSkip(final Throwable t, final int skipCount) throws SkipLimitExceededException
{
return true or false based on skipCount;
}
}
关于java - 是否可以禁用 spring batch 的跳过限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42975053/