spring mvc 文件下載

spring mvc 文件下載使用方法:

public String fileDownload(HttpServletRequest arg0, HttpServletResponse response) {
		String filename = "";
		String fileurl = "";
		String id = arg0.getParameter("db_id");
		DBBackup bdbackupinf = dbbackupService.loadById(id);
		if (bdbackupinf != null) {
			filename = bdbackupinf.getDb_bskcupName();
			fileurl = bdbackupinf.getDb_bskcpuUrl();

			response.setCharacterEncoding("utf-8");
			response.setContentType("multipart/form-data");
			response.setHeader("Content-Disposition", "attachment;fileName=" + filename);
			try {
				// String path = Thread.currentThread().getContextClassLoader()
				// .getResource("").getPath()
				// + "download";//這個download目錄爲啥建立在classes下的
				InputStream inputStream = new FileInputStream(new File(fileurl));

				OutputStream os = response.getOutputStream();
				byte[] b = new byte[2048];
				int length;
				while ((length = inputStream.read(b)) > 0) {
					os.write(b, 0, length);
				}

				// 這裏主要關閉。
				os.close();

				inputStream.close();
			} catch (FileNotFoundException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}

		}
		// 返回值要注意,要不然就出現下面這句錯誤!
		// java+getOutputStream() has already been called for this response
		return null;
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章