【发布时间】:2012-06-13 19:26:43
【问题描述】:
我正在尝试创建一个小型 servlet,它可以上传图像并能够在不同的页面中以幻灯片的形式检索它们。
我可以将它们保存在 WebApp 文件夹之外,但是在检索它们时,我需要它们成为 JSP 的一部分,该 JSP 将具有除图像之外的其他内容。目前,我使用 BufferedImage 和 ImageIO 类一次一个地流式传输图像。
BufferedImage image = ImageIO.read(new File("D:\\"+file.getName()));
ImageIO.write(image, "jpg", response.getOutputStream());
该文件在代码前面被检查为 JPEG 文件类型。
【问题讨论】:
-
您不应该使用 ImageIO:您正在读取表示 JPG 编码图像的字节,然后将字节流转换为 BufferedImage,然后将此缓冲图像转换为表示 JPG 编码图像的字节.只需读取字节并将它们按原样发送到响应输出流。
-
是的,我也试过了,方法是使用 BufferedInputStream 简单地读取它们,然后使用 BufferedOutputStream 编写它。这给了我相同的最终结果。我想要的是一张图片列表,而不是一张图片。
标签: java jsp servlets servlet-3.0