网络编程 
首页 > 网络编程 > 浏览文章

JSP 获取本地图片的实例详解

(编辑:jimmy 日期: 2024/10/8 浏览:3 次 )

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="/UploadFiles/2021-04-02/<%=basePath %>ClassicCasesAction!showPicture.action">

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

上一篇:JSP 自动刷新的实例详解
下一篇:java 中Spring task定时任务的深入理解
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?