我將讀取2000個文件並使用java對它們進行一些處理。所以我認爲我應該使用批處理。但我該怎麼辦?我的系統是Windows 7的Java批處理
Q
Java批處理
-2
A
回答
1
0
不能讀取文件作爲一個批次。你一次只閱讀一本。你可以使用多個線程,但我會先寫單線程。
不要緊,你使用的是什麼操作系統。
0
假設你有一個文件工作的能力,你有兩個選擇:使用一個文件列表,或者通過目錄復發。但是,如果您需要回滾更改作爲最終發生的事情的結果,則會變得棘手。您必須創建一個更改列表,然後在批處理操作結束時全部提交它們。
// first option
batchProcess(Collection<File> filesToProcess) {
for(File file : filesToProcess) processSingle(file);
}
// second option
batchProcess(File file) {
if(file.isDirectory()) {
for(File child : file.listFiles()) {
batchProcess(file);
}
} else {
processSingle(file);
}
}
3
您可以將Apache Camel/Servicemix ESB與ActiveMQ結合使用。
你的第一步是通過一個在ActiveMQ的消息寫在文件名之一。這可以在一個所謂的路由中完成(由框架自動分離一個線程)。在這裏你有幾個選擇使用哪個組件。有一個文件組件可以讀取文件並將它們移動到事後完成,或者您可以使用簡單的Java Bean。
在第二條路徑中,您可以閱讀Active MQ消息(如果需要更多性能,處理序列中的文件非常重要,或者需要更多性能的情況下處理多個消費者非常重要),就像處理器或Java Bean一樣處理文件內容。
您可以停止駱駝背景下你想要的任何時間(在加工過程中),並重新啓動它後獲得過程開始在尚未通過加載處理的下一個文件/從Active MQ消息隊列消費它。
1
相關問題
- 1. Java - 批處理
- 2. php java批處理
- 3. Java 8流批處理
- 4. Java BlockingQueue與批處理?
- 5. 批處理docx
- 6. ksh批處理
- 7. 批處理
- 8. Mybatis批處理
- 9. Windows批處理
- 10. SSIS批處理
- 11. 批處理REST
- 12. Nodejs批處理
- 13. asp.net批處理
- 14. 批處理DataFieldMaxValueIncrementer
- 15. XSLT批處理
- 16. 批處理
- 17. Java批處理的Jnuit測試用例
- 18. 批處理運行java,找不到類
- 19. Spring批處理Java配置JobLauncherTestUtils
- 20. 遠程執行批處理文件java
- 21. 從cron觸發Java EE批處理
- 22. Spring批處理支持Java 8嗎?
- 23. java命令行批處理文件
- 24. 用於批處理的Java OpenCL FFT
- 25. 從批處理Java作業打印
- 26. Java和多行批處理文件
- 27. 從java批處理文件運行jar
- 28. 由java運行批處理文件
- 29. 批處理文件調用Java問題
- 30. Hibernate Java批處理操作死鎖
更具體地說,(HTTP:// WWW。 whathaveyoutried.com) – Qix