private void writeStream(Object o, HttpServletResponse response) throws Exception {
OutputStream outputStream = null;
InputStream inputStream = null;
try {
response.reset();
//设置响应类型
response.setContentType("image/jpeg;charset=GB2312");
//设置文件为附件下载方式时去掉注释
/* response.setHeader("Content-Disposition", "attachment; filename=photo.jpeg");*/
outputStream = response.getOutputStream();
if (outputStream != null) {
inputStream = new ByteArrayInputStream((byte[]) o);
int len;
byte[] buf = new byte[1024];
while ((len = inputStream.read(buf)) != -1) {
outputStream.write(buf, 0, len);
}
outputStream.flush();
}
} finally {
try {
if (inputStream != null) {
inputStream.close();
}
if (outputStream != null) {
outputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
log.error(">>>>> error: 关闭文件流失败:{} >>>>>", e.getMessage());
}
}
}
此处的Object对象为一个byte[]类型文件,实际应用需根据自己的业务需求来;
header类型参考:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers