我有一个这样的文件:abc.txt
ProxyPass /tty/socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket/
ProxyPassReverse /tty/socket.io/1/websocket/ ws://localhost:8080/socket.io/1/websocket/
我想以可配置的方式使用Spring Batch拆分此文件,并以多线程方式读取文件。
例如,如果我们分成4行。
线程1将处理
1 fhdfjdkslk
2 jskslsss
3 iowiwjwm
4 jwkwlwo
5 uuwwwmwaa
6 sbnsbshj
7 yywuiwoiw
8 dhdhgsgs
9 sgsgsgs
10 uwuwqmksam
线程2将处理
1 fhdfjdkslk
2 jskslsss
3 iowiwjwm
4 jwkwlwo
线程3将处理
5 uuwwwmwaa
6 sbnsbshj
7 yywuiwoiw
8 dhdhgsgs
最后,所有3个线程的输出将在Spring Batch作业的最后一步中合并。
如果每组只包含一行,我就能实现这一目标。
如果每个集合在Spring Batch中包含多行,我该如何实现?
答案 0 :(得分:2)
您可以自己编写SystemCommandTasklet
。此tasklet用于执行系统命令。您可以使用split命令拆分文件。随后,您可以使用分区程序执行单独文件的处理。
有关此tasklet的更多信息Here