2011-03-18 89 views
0

我工作的GWT和下面是我的代码:检索通过图片src网址的图像GWT

if(rs1.next()){ 
    int len = imgLen.length(); 
    byte [] rb = new byte[len]; 

    InputStream readImg = rs1.getBinaryStream(1); 

    int index=readImg.read(rb, 0, len); 
    System.out.println("hello"); 
    System.out.println("index"+index); 
    //st.close(); 
    response.reset(); 
    response.setContentType("image/png"); 

    System.out.println("response"+response); 

    int len3 = 0; 

    while ((len = readImg.read(rb)) != -1) { 
       response.getOutputStream().write(rb,0,len); 
       System.out.println(response); 
    } 

我用这个代码在服务器端检索从MySQL数据库中的图像。它在客户端的响应是“IMG src =”http:// some path:8888/m/upload“url。那么有人知道如何在客户端检索图像吗?

回答

2

的问题不是每说GWT特有的。它看起来就像你有图像存储在你的数据中一样,你想让它们可用于网页(在你的情况下,你的GWT应用程序的客户端)

  1. 创建一个接受的图片ID或任何一个参数一个servlet,从数据库中读取图像,并把它写到了response.getOutputStream(它看起来像你的代码已经,只是把它放在一个独立的servlet)。

  2. 给在web.xml 例如servlet映射到图像的servlet的路径是/ DB-图像

  3. 您存储在数据库中的图像现在可以访问在http://your-server/your-app-context/db-images?id=123

+0

sir,response.getOutputStream()我的回应返回服务器客户端为http:// localhost:8080/m/war/images/imagename?id = 123他们的m是我的项目名称,在战争中我创建了一个文件夹映像在图像存储在本地系统在战争/图像.....在客户端我给图像m =新图像m.seturl(responsetext)... responsetext给客户端的URL,但图像nt显示...是行事正确 – 2011-03-28 12:31:59