在线等!请问我怎么把从数据库中取出的图片文件显示在页面上?
数据库中存的是二进制的图片文件,我需要把它读出来,然后显示在freemarker的页面上,请问我该怎么取,并怎么显示呀?   
 网上搜了很多,但是不行!   
 我用的是freemarker+webwork+ibatis
------解决方案--------------------把图片以二进制形式放在数据库中,取出时要将这个图片生成文件保存到一个目录下,那么从这个目录中链接显示,不是直接从数据库取出就直接显示在页面上的, 
 mstrBackName = result.getString( "randomname ");//后辍名 
 mstrfileName = result.getString( "markname ");//图片名 
 pintid = result.getInt( "id "); 
 InputStream inStream=result.getBinaryStream( "MarkBody ");//数据库中取出的二进制流 
 String aa=getServletContext().getRealPath( "/ ")+ "upload/showFile/ ";      
 FileOutputStream fs=new FileOutputStream(aa+mstrBackName);//定义要操作的路径和图片名 
 if(mstrBackName!=null&&mstrBackName!= " ") 
 { 
 	byte[]  buffer =new  byte[1444]; 
 	while ((byteread=inStream.read(buffer))!=-1)  
 	{ 
 		bytesum += byteread; 
 		fs.write(buffer,0,byteread);//写图片文件 
 	} 
 	String str; 
 	str =  " <img src= 'showFile/ "+mstrBackName+ " ' "; //显示出图片 
 	str = str +  "width=39 height=42 border=0>  "; 
 	out.println(str); 
 	out.println(pintid); 
 } 
 %>
------解决方案--------------------我想应该是先向浏览器输出网页的文本字节流,浏览器会分析网页文件,如果有图片的标签它会向服务器申请图片文件,你可以在服务器的web.xml配置对图片文件进行过滤,如果请求的是图片文件,就调用图片处理servlet,让这个servlet读取数据库中某个图片的数据库中的二进制字节流发回浏览器,注意要在发送前设置response的发送类型。文本的是text/html ,图片的好像是/jpg等
------解决方案--------------------小菜的是正解,我也是这么做的 
 http://community.csdn.net/Expert/topic/5251/5251650.xml?temp=.2915155 
------解决方案--------------------可以参考一下我的Blog 
 http://www.blogcn.com/User4/jaqcy/blog/35874137.html
------解决方案--------------------  替你靠过来了 
 从数据库取出图像数据并通过servlet发布为图片   
 代码只能做为参考,最好不要用在实际,因为它严重违反了MVC模式。     
     servlet             
 以下内容为程序代码:     
 /**   
  *    
  */   
 package servlet;     
 import java.io.*;     
 import 
javax.servlet.ServletException;   
 import javax.servlet.http.HttpServlet;   
 import javax.servlet.http.HttpServletRequest;   
 import javax.servlet.http.HttpServletResponse;   
 import javax.servlet.ServletConfig;   
 import javax.servlet.ServletOutputStream;     
 import javax.imageio.ImageIO;   
 import java.sql.*;   
 import java.awt.Image;   
 import java.awt.image.BufferedImage;   
 /**   
  * @author jaqcy   
  *   
  */   
 public class ImageServlet extends HttpServlet   
 {     
 @Override   
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws 
ServletException, 
IOException    {   
 // TODO 自动生成方法存根   
 resp.setContentType( "image/png "[img]/images/wink.gif[/img];   
 BufferedImage image=null;   
 try   
 {   
 Class.forName( "com.mysql.jdbc.Driver "[img]/images/wink.gif[/img];   
 Connection conn=DriverManager.getConnection( "jdbc:mysql://localhost/sampledb ", "root ", "mysql "[img]/images/wink.gif[/img];   
 Statement stmt=conn.createStatement();   
 ResultSet rs=stmt.executeQuery( "select image from customers "[img]/images/wink.gi