数据库表中Image图像的页面显示
在主jsp或servelt或bean中:从数据库中查询Image字段,以byte数组形式读取
byte[] bytes = results
.getBytes(index);
session.setAttribute("imgBlob", bytes);
显示图像的servlet代码
public class ShowImage extends HttpServlet { private static final String CONTENT_TYPE = "image/gif"; private transient final Log log = LogFactory.getLog(getClass()); protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (log.isDebugEnabled()) { log.debug("Entering 'showIcon' method"); } try { response.setContentType(CONTENT_TYPE); byte[] bytes = (byte[]) request.getSession().getAttribute("imgBlob"); response.setContentLength(bytes.length); ServletOutputStream op = response.getOutputStream(); op.write(bytes); op.flush(); op.close(); } catch (Throwable e) { log.error(e); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
|
web.xml中servelt映射:
<servlet> <servlet-name>showImage</servlet-name> <servlet-class>com.tjad.servlet.ShowImage</servlet-class> </servlet> <servlet-mapping> <servlet-name>showImage</servlet-name> <url-pattern>/showImage</url-pattern> </servlet-mapping>
|
在jsp页面中显示图像使用:
<img src="showImage" width="100" height="150"/>
|