我已将image as mediumblob
存储在数据库
在我的Image bean类中,我将photo属性存储为byte [],如
private byte[] photo;
// getter and setter method for photo
我从数据库中获取图像,用于存储在Image bean类
中image.setPhoto(resultset.getBinaryStreams(1));
然后我在Servlet中获取图像:
InputStream input = null;
OutputStream output = null;
try {
input = new ByteArrayInputStream(image.getPhoto());
output = // What type of stream should I use here
byte[] buffer = new byte[10240];
int length;
while ((length = input.read(buffer)) > 0) {
output.write(buffer, 0, length);
}
} finally {
output.flush();
input.close();
}
问题:
答案 0 :(得分:1)
您的output
流可以是response.getOutputStream()
直接返回的流。只需确保在将所有数据写入其后清除流。
如果您的servlet容器没有缓冲输出流,您可以考虑将输出包装在BufferedOutputStream
中。