如何在HTML中显示多个字节数组图像

时间:2013-03-08 06:57:23

标签: html jsp servlets bytearray

我有一个字节数组图像列表。

我在HTML页面中显示图像。 如果我想要显示25个这样的图像,我必须25次到数据库。

我想避免这种情况请帮忙。

HTML code

myProfile.init(function (map) {
    dom.byId("Image").src="UserImageDisplay?&userId="+map["userId"];    
}

Java代码

byte[] image = userSession.getPhoto(Integer.parseInt(request.getParameter("userId"));

response.setContentType("image/imagetype");

OutputStream out = response.getOutputStream();

out.write(image);
out.flush();
out.close();

2 个答案:

答案 0 :(得分:1)

您可以从某处获取映像,无论是数据库还是文件服务器。

由于您的建议,您不希望每次都从DB加载它。

我将采取哪些措施来改善效果。

1)Cache your images每当你从Db中获取一个(在缓存中不可用)时。 2)The cache can be Server Memory(高度建议,因为你可以快速耗尽内存),or cache the images in local storage

3)Storing of images in the cache,可以是done realtime,即从Web App请求文件时,或you could schedule a cron/batch job提前做到。优选在非高峰时段。

3 and 4 depends on how frequent the images are updated in the Database之间的选择。我会留给你的。

4)你可以明确specify the browser to cache the images。你可以用它完成它 tag

答案 1 :(得分:0)

我认为你应该缓存你的图像。

最好是你开始生成图像文件的cron作业。