我需要訪問itemProcessor
和itemWriter
中的對象,但我不想將其保存在executionContext
中。我會在預處理步驟中閱讀這個對象。
這樣做的最佳方法是什麼?Spring批處理 - 需要使用itemProcessor/itemWriter中的對象但不能保留它
到目前爲止,我有什麼是 - 我把對象的jobExecutionContext
,然後我把我的itemProcessor
爲「步」的範圍和itemProcessor
的屬性綁定到"#{stepExecution.jobExecution.executionContext}"
。這確實使我能夠訪問我的對象。但我在這個解決方案中遇到了兩個問題:
- 何時從上下文中刪除對象,以便它不保持持久性,它必須在完成所有項目後完成。
- 我的目標可能是巨大的,它似乎在上下文中的列大小2500
的這是一個很好的解決方案,如果是,我該如何解決上述兩個問題。如果沒有,是否有一種好方法可以在春季批量生產或緩存最佳方法?
謝謝。
只是爲了更新我最終做的事情 - 我創建了一個緩存對象並使用作業執行ID作爲緩存鍵。 – enkay 2013-07-30 23:05:42