2014-10-20 71 views
-1

其实我能够显示图像或剩余列,但没有图像+数据如何显示包含图像和其他数据

表,这是我的代码

if(rs1.next()){ 

imgLen = rs 1. getString(5); 
int len = imgLen.length(); 
byte [] rb = new byte[len]; 
InputStream readImg = rs1.getBinaryStream(5); 
int index=readImg.read(rb, 0, len);  
response.setContentType("text/html"); 
out.print(rs1.getInt(1) + "\t"); 
out.print(rs1.getString(2) + "\t"); 
out.print(rs1.getString(3) + "\t"); 
out.print(rs1.getLong(4) + "\t"); 

ps.close(); 
response.reset(); 
response.setContentType("image/jpg"); 

response.getOutputStream().write(rb,0,len); 

response.getOutputStream().flush(); 
} 
+1

很好。你的问题是什么? – 2014-10-20 05:29:40

+0

图像正在显示,但没有显示数据。 – 2014-10-20 06:27:44

+0

表中包含五列第五列包含图像。前4列数据不显示,只显示图像。如何显示两者? – 2014-10-20 06:28:50

回答

0

如果你仔细观察你的代码,你会发现你正在做一个reset你的response对象。

response.reset(); 

这将清除在buffer存在还有status codeheaders任何数据。这意味着它将reset任何操作您已经在response完成的,比如,如下所示:

response.setContentType("text/html"); 

out.print(rs1.getInt(1) + "\t"); 
. 
. 

,做复位你只写入图像日至response还设置contentType"image/jpg"后。因此,它只显示图像。

希望它可以帮助你。

+0

我已删除此内容。 response.reset();即使不来。它的图片符号甚至不是图片。 – 2014-10-21 10:08:33

相关问题