使用 RemoteFileTemplate
Spring Integration 3.0 版本為 SftpSession
物件提供了一個新的抽象層。此範本提供發送、檢索 (作為 InputStream
)、移除和重新命名檔案的方法。此外,我們還提供了一個 execute
方法,讓呼叫者可以在會話上執行多個操作。在所有情況下,此範本都會負責可靠地關閉會話。如需更多資訊,請參閱 RemoteFileTemplate
的 Javadoc。SFTP 有一個子類別:SftpRemoteFileTemplate
。
在 4.1 版本中,我們新增了其他方法,包括 getClientInstance()
。它提供對底層 ChannelSftp
的訪問權限,從而能夠存取底層 API。
5.0 版本引入了 RemoteFileOperations.invoke(OperationsCallback<F, T> action)
方法。此方法允許在同一個執行緒綁定的 Session
範圍內呼叫多個 RemoteFileOperations
呼叫。當您需要將 RemoteFileTemplate
的多個高階操作作為一個工作單元執行時,這非常有用。例如,AbstractRemoteFileOutboundGateway
將其與 mput
命令實作一起使用,在該實作中,我們對提供的目錄中的每個檔案以及其子目錄遞迴地執行 put
操作。請參閱 Javadoc 以取得更多資訊。