Java code:
@RequestMapping (value = "/download") @ResponseBodypublic void Download (HttpServletRequest request, HttpServletResponse response) throws FileNotFoundException {//Get server-side file save path string realpath = Request.getsession (). Getservletcontext (). Getrealpath ("/"); String Path = realpath+ "file. txt";//download try {//path refers to the path of the file to download. File File = new file (path); Gets the file name. String filename = File.getname (); Gets the suffix name of the file. String ext = filename.substring (Filename.lastindexof (".") + 1). toUpperCase (); Download the file in the form of a stream. InputStream fis = new Bufferedinputstream (new FileInputStream (path)); byte[] buffer = new byte[fis.available ()]; Fis.read (buffer); Fis.close (); Empty response Response.reset (); Set Response header Response.AddHeader ("Content-disposition", "attachment;filename=" + New String (filename.get Bytes ("gb2312"), "iso8859-1"); Response.AddHeader ("Content-length "," "+ file.length ()); OutputStream toclient = new Bufferedoutputstream (Response.getoutputstream ()); Response.setcontenttype ("Application/octet-stream"); Toclient.write (buffer); Toclient.flush (); Toclient.close (); } catch (IOException ex) {ex.printstacktrace (); }}
Request Method:
Window.location.href = encodeURI ("Forecast/download");
This does not use a tag to request directly in the JS call can
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
File Download implementation