2013-01-24 52 views
0

我在servlet中以byte []的形式存在图像。我想通过将请求转发给html(或JSP)来将此图像发送到html(或JSP页面)页面。请告诉我,我该怎么做,以及该图像如何显示在HTML页面上。如何将图像(byte [])从servlet发送到HTML页面

+0

你*可以*使用“data:”URL并将整个图像嵌入到HTML中,但如果它很大并且可缓存,则可能是一个普通的图像标签(它会执行单独的请求)更好。 – Thilo

+0

嘿。你能告诉我确切的标签吗?假设在我使用的servlet中。 byte []图像;/*在变量图像中存储图像*/request.setAttribute(“myimage”,image);/*现在转发请求* /。现在哪个标签以及如何使用它来显示该图像。 – gaurav414u

回答

0

我会将byte[]数据转换为图像,并为HTML页面提供生成图像的URL。这是一个简单的转换示例:

BufferedImage img = ImageIO.read(new ByteArrayInputStream(bytes)); 

希望这有助于。

+0

是的。那是另一个选择,我早先想到了这个。但是还有没有其他的出路。至于这件事我的服务器将有大量的临时文件。 – gaurav414u

+0

另一种方法是将图像(或字节[])转换为Base64字符串,并在HTML img标签中显示该字符串。但同样,根据图像的大小,这个字符串可能会超出界限并放慢您的网站。另一种方法是找到一个聪明的方式来处理临时文件,并尽快删除它们等。 – Zorayr

+0

好吧,我会尝试.. – gaurav414u

相关问题