网上有很多通过写入请求的输出缓冲区从 servlet 输出图像的示例。是否可以从 servlet 的表中创建包含多个图像的整个 HTML 页面?图像将由 bean 动态创建。
问问题
353 次
2 回答
2
你不想那样做。
我将创建两个 servlet:
<img src="...">
为每个图像提供包含元素的 HTML 页面。- 提供图像的二进制数据
基本上,第一个 servlet 会将 HTML 发送到客户端浏览器。<img>
浏览器为它找到的每个元素发送新的 HTTP 请求。第二个 servlet 将通过将图像的二进制数据直接写入响应的OutputStream
.
于 2013-09-08T16:16:36.317 回答
1
对于小图像,您可以使用 css 或直接在 html 中嵌入图像。要使用 css 嵌入,请查看this。
这就是我的建议:
<html>
<body>
<img alt="some title" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA.."/>
<img alt="some title" src="data:image/png;base64<data2>"/>
<img alt="some title" src="data:image/png;base64<data2>"/>
</body>
</html
要获得在 src 属性中 base64 之后应该具有的确切值,您应该查看将 png 图像转换为 base64。
这个解决方案有点不理想,如果页面中有超过 10-15 个图像,可能会永远加载页面。
如果是这种情况,那么您应该使用链接到提供图像的 servlet 的 url 的其他解决方案。
于 2013-09-08T16:25:38.497 回答