通过文件流读取本地图片显示在JSP页面方法
读取本地图片显示在jsp 页面上
public String viewImages() {
HttpServletRequest request=ServletActionContext.getRequest();
//pic为读取到图片的存储路径(数据库中存储的字段值)
String pic = request.getParameter("alaramPic");
HttpServletResponse response = ServletActionContext.getResponse();
ServletOutputStream out = null;
FileInputStream ips = null;
try {
// ALARM_FILE_PATH为本地图片存放路径,imagePath为图片的真实路径
String imagePath = Const.ALARM_FILE_PATH + pic;
ips = new FileInputStream(new File(imagePath));
response.setContentType("multipart/form-data");
out = response.getOutputStream();
//读取文件流
int i = 0;
byte [] buffer = new byte [4096];
while ((i = ips.read(buffer)) != -1) {
//写文件流
out.write(buffer, 0, i);
}
out.flush();
ips.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if (ips != null) {
try {
ips.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
return null;
}
注释:本方法返回的值为null
在JSP 页面中调用:
"
src='${ctx}/alaram/alaram!viewImages.action?alaramPic="+ pic +"'>