工作包括:
我不确定我是否可以/应该将其作为面向块的进程实现,还是将其作为Tasklet保持简单?
我已经把它作为一个Tasklet来做,所以我想知道它是否可能以其他方式,如果它有任何好处。
这是我从REST客户端使用的内容
[
{
"value": "base64encoded"
},
{
"value": "base64encoded"
},
...
]
其中编码值是电子邮件地址数组["item1", "item2"]
。
由于内容是字符串数组,我在自定义List<String>
的{{1}}方法上返回一个read()
,但我不认为这是正确的,因为它应该退货,不是吗?
我也在读卡器上进行解码,还是应该在ItemProcessor上进行解码?
作为一名作家,我选择ItemReader
,但我不确定应如何配置它。
答案 0 :(得分:1)
我会开始对问题进行评估,如果出现问题会怎样? Spring Batch提供了许多通过侦听器,重试和跳过机制等处理错误的工具。大多数都不能通过原始Tasklet
实现来获得。其次,如果你正在进行基于项目的处理(也就是一次迭代一个项目),即使你要添加并行性,我仍然建议使用基于块的处理。只有在完成这两个想法后,我才会考虑做一个原始的Tasklet
实施。