将图像保存为BLOB时如何在JSP中显示文本?

时间:2011-01-23 17:25:47

标签: java spring jsp image-processing spring-mvc

我做了很多谷歌搜索,但我找不到具体的答案。

我正在使用Spring MVC 3将用户图像保存到数据库中。我现在成功地做到了。我将图片保存为BLOB

我可以将图片检索为byte[]

无论文件类型是什么 - jpg,png,gif等(我的图片上传是图片文件类型不可知)我想允许jpg和gif和png让我们说渲染,即我的显示技术不应该硬编码显示只有一种类型的图像,比如jpg,它应该能够显示所有图像,因为它们是以各自的类型上传的 - 这是要求。

现在,我想做两件事

    如果必须,
  1. 重新调整图像大小。即。 200乘200
  2. 使用文本在JSP中呈现图像。 这是一个用户个人资料页面,所以我 需要有文字和图像 所示。
  3. spring mvc如何使用文本渲染图像?

    我从研究中了解到你可以使用BufferedImage类型的jsp?但我的问题是,如果内容类型严格为image/jpegimage/gif,您似乎只能使用它。

    我遇到了一些调整大小的链接:
    http://forum.springsource.org/archiv...p/t-46021.html

    任何建议都欢迎,如果这些工作,但最终我需要显示图像。

    请传递你的想法。

    谢谢。

1 个答案:

答案 0 :(得分:1)

只需创建一个servlet,将图像从DB流式传输到响应的输出流。然后你可以按照以下方式调用它:

<p>
   <img src="imageservlet/${bean.imageId}" />
   ${bean.text}
</p>

如您所见,您只需在HTML中显示图像旁边的文字。无论如何,您无法在单个HTTP响应中混合使用它们。图像计为单独的HTTP请求。有关此类servlet的更多详细信息和启动代码示例,请选中this answer

关于调整大小,请查看Java 2D API。