在hibernate中你可以把这个字段映射成blob,然后在
web层写一个servletpublic class IconServlet 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 {
            String iconId = request.getParameter(Constants.ICON_ID);
            if ((iconId == null) || ("".equals(iconId)))
                return;
            WebApplicationContext context = WebApplicationContextUtils.
                    getRequiredWebApplicationContext(getServletContext());
            IconManager mgr = (IconManager) context.getBean("iconManager");
            Icon icon = mgr.getIcon(new Long(iconId));
            Blob blob = icon.getBlob();
            int fileSize = (int) blob.length();
            byte[] ab = blob.getBytes(1, fileSize);
            response.setContentType(CONTENT_TYPE);
            response.setContentLength(fileSize);
            ServletOutputStream op = response.getOutputStream();
            op.write(ab);
            op.flush();
            op.close();
        } catch (Throwable e) {
            log.error(e);
        }    }
}在jsp中                                         <html:img  src="../icon" paramId="iconId" paramName="ware" paramProperty="iconId" border="0" align="absmiddle" width="85" height="110" />
           

解决方案 »

  1.   

    我全部用的是Struts啊,在一个action 中取到这个List,然后,要在页面上显示。怎么做啊?
      

  2.   

    把图片读出来放在字节数组里,用servlet显示出来
      

  3.   

    http://www.javawebstudio.com/bbs/index.asp
    去这里搜一下!一个不错的struts论坛!
      

  4.   

    任何一个图片它总是来自与当前页面不同的另一个url,所以你必须用另一个url来输出它的数据,如likeBean(喜欢吃咖啡豆) 的方法。
      

  5.   

    图片可以单独的放到一个<iframe>中
      

  6.   

    不是用<html:image>标签吗?
      

  7.   

    是用这个标签,可不知道怎么用呢?怎么将List中的一个属性,直接用它来显示?
      

  8.   

    我不是已经把代码给你贴出来了吗,这跟list有什么关系?
      

  9.   

    你的hibernate的persiste-class也许需要重构,把blob零星的放在业务表中不是一个好的设计,你想想,只要去拿业务表的记录就要取blob,server端的压力比较大,所以好的方法是将所有的blob放在一个表中,然后与你的业务对象保持onetoone的关系,执行lazy加载,如我给你贴的代码那样,在取业务数据的数据只取出图片(或者其他blob对象)的id,然后利用id再让serlet去读取你需要显示的图片。
      

  10.   

    我另外一个贴子:
    http://community.csdn.net/Expert/topic/3794/3794735.xml?temp=.6227533帮我解决问题者200分都送给他!
      

  11.   

    图片是没有地址的,是从别的地方,用XML文件,以字节的形式传过来的。