1
我有file.zip
在DB像BLOB
。我想在Spring控制器中創建方法,以便在客戶端下載此文件。如何從客戶端的控制器下載zip文件?春季開機
@RequestMapping(value = "/downloadResolution/{resolutionId}", method = RequestMethod.GET)
public void downloadResolution(@PathVariable("resolutionId") Long resolutionId, HttpServletResponse response) {
Resolution resolution = resolutionService.findOne(resolutionId);
ResolutionArchive resolutionArchive = resolution.getResolutionArchive();
if (resolutionArchive == null) return;
byte[] archive = resolutionArchive.getArchive();
//this byte[] archive - my zip file from db
}
我該如何改變這個methot爲了在客戶端下載這個?
用戶按下載按鈕。 Methos從byte []中獲取數據,用戶可以下載它。
編輯
我試過@pleft的解決方案,它的工作。我知道 - 我使用阿賈克斯的呼叫方法
function downloadResolution(resulutionId) {
$.ajax({
type: 'GET',
dataType: "json",
url: '/downloadResolution/' + resulutionId,
success: function (data) {
},
error: function (xhr, str) {
}
});
}
如何實現這一點,如果我使用ajax?
不顯示窗口,用於保存文件時,我按下「下載」,被執行downloadResolution方法 – user5620472
你確定你的'resolutionArchive'不爲空?因爲在你的代碼中我看到'if(resolutionArchive == null)return;'因此如果你的程序返回什麼都不會發生。你可以調試嗎? – pleft
是的,我確定。它不是NULL。 – user5620472