IOUtils.closeQuietly() 它将无条件的关闭一个可被关闭的对象而不抛出任何异常。
如果直接用
reader.close();
需要添加 try catch IOException
@RequestMapping("/getoplogphotoimg")
@ResponseBody
public String getoplogphotoimg(HttpServletRequest request, HttpServletResponse response) throws Exception{
String photoId = request.getParameter("photoid");
OutputStream out = null;
try {
InspectOpLogPhoto photo = this.opLogService.queryOpLogPhotoData(photoId);
if (photo == null){
return null;
}
response.setContentType(ImageUtils.getImageContentType(photo.getImagetype(), ImageUtils.DEFAULT_IMAGE_CONTENTTYPE));
out = response.getOutputStream();
out.write(photo.getPhoto());
out.flush();
} catch(Exception e){
logger.error("getoplogphotoimg failed: "+photoId, e);
} finally {
IOUtils.closeQuietly(out);
}
return null;
}