我一直在寫一個小應用程序,可以讓人們上傳&下載文件給我。我已經爲這個應用添加了一個Web服務來提供上傳/下載功能,但我並不太確定我的實現如何處理大文件。Web服務可以返回流嗎?
目前的上傳下載&方法的定義是這樣的(使用Apache CXF的書面):
boolean uploadFile(@WebParam(name = "username") String username,
@WebParam(name = "password") String password,
@WebParam(name = "filename") String filename,
@WebParam(name = "fileContents") byte[] fileContents)
throws UploadException, LoginException;
byte[] downloadFile(@WebParam(name = "username") String username,
@WebParam(name = "password") String password,
@WebParam(name = "filename") String filename) throws DownloadException,
LoginException;
所以文件被上傳和下載爲一個字節數組。但是,如果我有一個愚蠢的大小(例如1GB)的文件,它肯定會嘗試將所有這些信息存入內存並使我的服務崩潰。
所以我的問題是 - 是否有可能返回某種類型的流?我想這不會是非常獨立的操作系統,但。儘管我知道Web服務背後的理論,但實際方面仍然需要我提供一些信息。
乾杯任何輸入, 李
爲什麼5年前的問題再次激活的任何具體原因?答案已過時? – Loko 2013-12-20 00:06:10