java服务器展示图片和服务器下载图片

Java (54) 2023-10-11 12:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说java服务器展示图片和服务器下载图片,希望能够帮助你!!!。

服务器传输图片到客户端,有时候是直接下载,有时候是类似src='请求路径'

其主要区别在于

res.setContentType("img/jpg");
			res.setHeader("Content-Disposition", "attachment;filename="+fileName);

加了这两行之后就是下载 一个是格式,一个是文件名字

另外附上下载图片代码:

@ResponseBody
	@RequestMapping(value = "/downloadFile", method = { RequestMethod.GET, RequestMethod.POST })
	public void downloadFile(HttpServletRequest request, HttpServletResponse res) {
		logger.info("downloadFile...");
		String fileName = request.getParameter("fileName");
		File file = new File(fileUploadPath + fileName);
		if (!file.exists()) {
			logger.error("resource file not exists.");
		}
		BufferedInputStream bis = null;
		BufferedOutputStream bos = null;
		try {
			res.setContentType("img/jpg");
			res.setHeader("Content-Disposition", "attachment;filename="+fileName);
			bis = new BufferedInputStream(new FileInputStream(file));
			bos = new BufferedOutputStream(res.getOutputStream());
			byte[] bys = new byte[1024];
			int len = 0;
			while ((len = bis.read(bys)) != -1) {
				bos.write(bys, 0, len);
			}
			logger.info("downloadComplete...");
		} catch (IOException e) {
			e.printStackTrace();
			logger.error("downloadError", e);
		} finally {
			try {
				bos.close();
				bis.close();
			} catch (IOException e) {
			}
		}
	}

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

发表回复