0

I am new to this area, I have added a number of images to gridfs. Now i want to display all these images on html page. I have retrieved the images from mongodb using the following code.

Query query = new Query(where("filename").is("file"));
List<GridFSDBFile> images = gridFsTemplate.find(query);
model.addAttribute("images",images");

It gives me all the images, now i have no idea how to display these images on html page. i am using velocity template.

 #foreach($image in $images)
    //code for image
 #end
4

1 回答 1

3

在速度模板中输出 GridFSDBFile 类型的对象没有意义。您应该将 URL 输出到 iamge,例如

#foreach($imageId in $imageIds) 
<img src="getImageFromGridFs?id=$imageId">
#end

然后创建一个 getImageFromGridFs Servlet(或相关的服务器端代码)来获取相应的图像并将其流式传输到 Servlet 的 OutputStream。

从 GridFs 获取图像后,您可以使用 Servlet 访问图像数据GridFSDBFile.getInputStream()

希望这可以帮助。

于 2014-02-20T09:32:38.397 回答