JSP 获取本地图片的实例详解
IE当前7以上版本不支持直接在src上写本地硬盘地址来显示图片。因为我们只有通过后台在response中读到二进制流的方式来在前台显示图片。
具体代码如下:
public void showPicture(){
String id = ServletActionContext.getRequest().getParameter("id");//前台传来的存图片路径实体类的主键id
HttpServletResponse response = ServletActionContext.getResponse();//struts2获取response
if(id != null !"".equals(id)){
this.classicCases = this.classicCasesManager.findClassicCasesById(id);
String pic_path = this.classicCases.getImagesLocalPath();//图片路径
FileInputStream is;
try {
is = new FileInputStream(pic_path);
int i = is.available(); // 得到文件大小
byte data[] = new byte[i];
is.read(data); // 读数据
is.close();
response.setContentType("image/*"); // 设置返回的文件类型
OutputStream toClient = response.getOutputStream(); // 得到向客户端输出二进制数据的对象
toClient.write(data); // 输出数据
toClient.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
jsp页面很简单,路径格式为,http://localhost:8080/projectName/*.action:prama=XXX
img alt="" id="images" src="%=basePath %>ClassicCasesAction!showPicture.action?id=${classicCases.id}">
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:- JSP实用教程之简易图片验证码的实现方法(附源码)
- jsp中点击图片弹出文件上传界面及实现预览实例详解
- java实现图片上加文字水印(SpringMVC + Jsp)
- JSP中图片的上传与显示方法实例详解
- Jsp中如何让图片在div中居中
- 解决图片路径中含有中文在jsp下不能正常显示问题
- Servlet+Jsp实现图片或文件的上传功能具体思路及代码