如何向jsp页面显示图像?

时间:2014-08-04 14:54:42

标签: javascript ajax spring jsp

我使用ajax传递主键来获取图像。现在,image处于字节数组和bean中。如何向jsp页面显示此图像?建议我任何可行的方法。

2 个答案:

答案 0 :(得分:0)

您可以使用data uri scheme

 document.getElementById("imgId").src = "data:image/png;base64," + TheBase64Variable;

为什么在可以直接设置源时使用Ajax调用?

document.getElementById("imgId").src = "foo.jsp?foo=bar";

答案 1 :(得分:0)

您可以尝试使用Servlet。只需在响应的输出流中写入字节。

JSP:

<img src="${pageContext.servletContext.contextPath}/myServlet"/>

的Servlet

protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    OutputStream outputStream = response.getOutputStream();
    outputStream.write(bytes);
    outputStream.flush();
}

的web.xml:

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.x.y.z.MyServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/myServlet</url-pattern>
</servlet-mapping>

您可以将图像名称作为查询字符串传递,并且根据图像名称,您可以在响应的输出流中写入相应的字节。