使用servlet从Web根文件夹外部的文件夹中检索图像
我正在尝试创建一个上传图像的小型servlet,并能够以幻灯片forms在不同的页面中检索它们。
我可以将它们保存在WebApp文件夹之外,但是在检索它们时,我需要它们作为JSP的一部分,除了图像之外还有其他内容。 目前,我正在使用BufferedImage和ImageIO类一次一个地传输图像。
BufferedImage image = ImageIO.read(new File("D:\\"+file.getName())); ImageIO.write(image, "jpg", response.getOutputStream());
该代码中的文件被检查为JPEG文件类型。
您需要了解HTTP和HTML的工作原理:
- 浏览器要求提供HTML页面(第一个请求)
- 服务器发送回HTML(仅限HTML),包含3个
标签
- 浏览器发送请求以获取第一个图像的字节(第二个请求)
- 服务器发回第一个图像的字节
- 浏览器发送请求以获取第二个图像的字节(第三个请求)
- 服务器发回第二个图像的字节
- 浏览器发送请求以获取第三个图像的字节(第四个请求)
- 服务器发回第三个图像的字节
因此,您需要一个生成HTML页面的servlet或JSP,其中包含所有标记。 每个标签应具有以下forms:
并且您需要第二个servlet,映射到imageServlet
,它读取由文件系统中的imageId
参数值标识的图像的字节,并将这些字节写入响应输出流。
他们我需要他们成为JSP的一部分,其中包含其他内容,
在JSP中使用image标签