spring使用流读取指定路径图片

原创 2013年12月04日 16:05:49


//流读取图片

package cn.fenghuait.controller;

import java.io.FileInputStream;
import java.util.Map;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import cn.fenghuait.service.SysParameterService;

@Controller
@RequestMapping("/picture")
public class ShowPicController extends BaseController{
  private static Log logger = LogFactory.getLog(ShowPicController.class);
  @Autowired
  private SysParameterService parameterService;
 
  @RequestMapping(value="/showPic")
  public @ResponseBody Map<String,Object> showPic(HttpServletRequest request,HttpServletResponse response) throws Exception{
    try{
      String basePath = parameterService.getProblemPic();
      String str = request.getParameter("picName");
        String realName = basePath+"/"+str;
        FileInputStream fs = new FileInputStream(realName);
        int b=fs.available(); //得到文件大小   
        byte data[]=new byte[b];   
        fs.read(data);  //读数据   
        response.setContentType("image/*"); //设置返回的文件类型   
        ServletOutputStream toClient=response.getOutputStream(); //得到向客户端输出二进制数据的对象   
        toClient.write(data);  //输出数据   
        toClient.flush();
        toClient.close();
        fs.close();
    }catch(Exception e){
      e.printStackTrace();
      logger.error(e);
    }
    return null;
    
  }
}



//查询图片名称

info=problemInfoService.getProblemInfoById(problemInfo.getProblemId());
           List<String> list = new ArrayList<String>();
       if(info.getPicturePath()!=null&&!"".equals(info.getPicturePath().trim())){
       String str = info.getPicturePath();
       String[] strs = str.split(",");
       String pic = "";
       for(int i = 0;i<strs.length;i++){
          pic = strs[i];
         list.add(pic);
       }
       }
          mav.addObject("problem", info);
          mav.addObject("realName", list);


//jsp显示图片

    <c:forEach items="${realName }" var="item">

                <li><a  target="_blank"><img src="${basePath}/picture/showPic?picName=${item}" alt="民情图片" /></a></li>
            </c:forEach>

springmvc 输出流导出

springmvc 输出流导出
  • zwr597224367
  • zwr597224367
  • 2017年02月15日 14:28
  • 1217

SpringMVC读取本地图片(byte[]流方式)显示到前端页面

控制层: package ywzn.by.scity.ctrl; import java.io.FileInputStream; import java.io.IOException; impo...
  • u014175572
  • u014175572
  • 2015年03月23日 12:05
  • 9290

spring mvc 从本地文件中读取图片,并显示在页面中

//后台java代码@RequestMapping("/bmpShow") public void bmpShow(HttpServletRequest request,HttpServletRes...
  • u014548833
  • u014548833
  • 2017年11月13日 15:38
  • 141

SpringMVC读取本地图片(byte[]流方式)显示到前端页面

控制层: package ywzn.by.scity.ctrl; import java.io.FileInputStream; import java.io.IOException; impo...
  • u014175572
  • u014175572
  • 2015年03月23日 12:05
  • 9290

java IO流读取图片供前台显示

最近项目中需要用到IO流来读取图片以提供前台页面展示,由于以前一直是用url路径的方式进行图片展示,一听说要项目要用IO流读取图片感觉好复杂一样,但任务下达下来了,做为程序员只有选择去执行喽,于是找了...
  • u014598014
  • u014598014
  • 2017年04月18日 21:20
  • 6099

用io读取一个文件.

InputStream是所有输入流的基类,FileInputStream是它的一个实现类,允许程序读取机器上面的文件 FileInputstream,FileOutputstream分别是由抽象类I...
  • RenJanely
  • RenJanely
  • 2013年02月26日 00:10
  • 5010

Spring-boot中读取config配置文件的两种方式

了解过spring-Boot这个技术的,应该知道Spring-Boot的核心配置文件application.properties,当然也可以通过注解自定义配置文件的信息。 Spring-Boo...
  • qq_32786873
  • qq_32786873
  • 2016年10月17日 18:37
  • 25890

java IO流之二 使用IO流读取存储文件

http://blog.csdn.net/a107494639/article/details/7586440 一、使用字符流,读取和存储纯文本文件。        存储文件,也就...
  • haluoluo211
  • haluoluo211
  • 2016年08月11日 15:34
  • 1665

SpringMVC从本地磁盘读取图片显示到JSP页面上

上一篇博客是从数据库中读取图片的二进制信息流然后显示到JSP页面上,下面是将图片存储到我的本地磁盘E中,然后在数据库中只存图片的名字 将磁盘的路径写到配置文件中,从配置文件中将地址读取出来,图片显示...
  • cwzhsi
  • cwzhsi
  • 2015年02月03日 13:44
  • 12767

JAVA IO流(字节流读写File(文本、图片、音乐~))

//仅作为学习笔记 /* 字符流 FileReader FileWriter BufferedReader BufferedWriter 字节流(操作图片要用到字节流) InputS...
  • wu_lai_314
  • wu_lai_314
  • 2013年03月25日 14:56
  • 1524
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring使用流读取指定路径图片
举报原因:
原因补充:

(最多只允许输入30个字)