当使用Spring Batch中的public class MyClass implements ItemWriteListener<MyDTO> {
// fields and constructor omitted
@Override
public void beforeWrite(List<MyDTO> items) {
try {
repository.loadAll(); // <-- Throws some checked exception
} catch (Exception e) {
// What to do here?
}
}
// other methods omitted
}
(或类似)时,处理被检查异常的正确方法是什么?是侦听器的委托吗?
例如:
RuntimeException
我该如何处理这个例外?以下是一些想法:
MyDTO
ItemWriteListener
项目上设置一些指示符以指示失败当然,我无法抛出已检查的异常,因为它未在static char calc_crc(char init, unsigned char *data, unsigned len)
{
for ( int i = 0 ; i < len; i++ )
init = init ^ data[i];
return init;
}
接口上声明。
答案 0 :(得分:5)
如果读取器/写入器依赖于此操作,则抛出运行时异常。这样,您可以确保SpringBatch正确处理事务和SpringBatch db-tables的更新。