Spring MVC - 显示数据库中的Blob图像

时间:2013-04-15 23:04:23

标签: database image jsp blob apache-commons

首先,我是Spring MVC的新手,我真的很抱歉,如果这看起来像一个重复的问题,但是我很难找到一个细分指南/教程,关于如何在JSP页面上接收它们之后在JSP页面上显示图像数据库。我读过的大多数回复都会给你一些小小的片段,让我更加困惑。

我有一个MySQL数据库,其中包含一个存储为blob的图像表。我有一个服务,它从数据库中检索blob图像并填充 CommonsMultipartFile 的数组。我还有一个Controller,它将数组传递给JSP页面,循环遍历我想要显示的每个图像。

CONTROLLER

@RequestMapping(value = { "/my/images" }, method = RequestMethod.GET)
public String getAllImages(HttpServletRequest request, HttpServletResponse response, ModelMap model) {

    final List<CommonsMultipartFile> images = new ArrayList<CommonsMultipartFile>();

    myService.getAllImages(images);
    model.addAttribute("myImages", images );

    return getUrl(request);

}

JSP

<c:forEach items="${myImages}" var="image">
    <img src="${image}">        
</c:forEach>

这是我得到的。图像未显示。请有人帮忙吗?

非常感谢提前!

1 个答案:

答案 0 :(得分:0)

最好将这些二进制文件保存到硬盘(使用pk作为文件名)并直接将它们提供给浏览器。

您也可以编写Servlet,但很难编写异步Servlet。