OutputStream out=null;
BufferedOutputStream bos=null;
byte [] photos=null;

List<Images> imagesList = imagesService.imagesList(start, end);
for (Images images : imagesList) {
photos= (  images.getImagephoto()==null?null:images.getImagephoto() );
}out=response.getOutputStream();
bos=new BufferedOutputStream(out);
bos.write(photos,0,photos.length);问题:
求解。
列表是进制,没显示图片。库中是Blob型,映射是byte[]
BufferedOutputStream 怎么把byte输出图片

解决方案 »

  1.   

    你确定图片字节数组没问题后,“输出成图片”这个事不归BufferedOutputStream管,他只管将字节写入到流中然后加了个缓存提高性能。你先要得到图片的byte[]数组,然后我不知道你的Images这个类是自定义类吗?JDK中提供的是java.awt.Image.然后看你这里用到了response,猜你要能过Servlet返回给浏览器吧你想把一组图片一次性返回?这种逆天的事你也想做?
      

  2.   


    输出成XXX.jag文件就行了。至于怎么打开,怎么显示那就是图片浏览器的事儿了。
      

  3.   

    您好,Images类是mybatis自动生成的    数据库是Blob类型的   mybatis生成的是byte[]
    图片是进制入库的
      

  4.   

    你说的Images类,就是存储图片基本信息的类吧。
    把图片的内容读出来,然后写出成某种图片格式(图片格式:李固jpg,应该在Images类中有的)就行了。