超简单问题,各位快来抢分啊,一经解决,利马结贴
请问各位,如何从数据库读取图片byte[],生成要求大小缩略图,直接输出到web页面,刚接触java,谢谢了,利马结贴 问题点数:30、回复次数:17Top
1 楼aylian(暂时没什么好用的,就用个空的好了!)回复于 2006-03-09 14:10:43 得分 0
大小可以由web来控制,通过定义img的width与height属性就可以解决。Top
2 楼sophia2000(喝血社会)回复于 2006-03-09 14:24:50 得分 0
楼上的,我试过,在img里面加上weight和height属性,不起作用Top
3 楼sophia2000(喝血社会)回复于 2006-03-09 14:25:03 得分 0
楼上的,我试过,在img里面加上weight和height属性,不起作用Top
4 楼issgates(一直很安静)回复于 2006-03-09 14:47:18 得分 0
这涉及到数据库大字段操作,找找参考资料吧,不同数据库的操作是不同地 。Top
5 楼terry_yip(我只回答引起我思考的问题)回复于 2006-03-09 14:51:45 得分 3
把那些图片的相对路径,存在数据库的字段中,例如"/myweb/images/11.gif"这样就行了,既节省了数据库的空间,读出来时效率也高。
Top
6 楼falang123()回复于 2006-03-09 14:54:27 得分 0
严重支持,terry_yip(由于系统原因,我把所有的贴子都结了,信誉分还是没恢复) 朋友的观点。。。。。Top
7 楼sophia2000(喝血社会)回复于 2006-03-09 15:06:51 得分 0
我现在已经从数据库中读取到了byte[],但是我不知道怎么才能把byte[]数组输出成我要求大小的图片到web上,请各位指教Top
8 楼sophia2000(喝血社会)回复于 2006-03-09 15:06:59 得分 0
我现在已经从数据库中读取到了byte[],但是我不知道怎么才能把byte[]数组输出成我要求大小的图片到web上,请各位指教Top
9 楼sophia2000(喝血社会)回复于 2006-03-09 15:07:04 得分 0
我现在已经从数据库中读取到了byte[],但是我不知道怎么才能把byte[]数组输出成我要求大小的图片到web上,请各位指教Top
10 楼wangjinwang(王者之疯)回复于 2006-03-09 15:32:55 得分 0
这样用属性应该可以吧
<IMG WIDTH=50 HEIGHT=50 SRC=...Top
11 楼sophia2000(喝血社会)回复于 2006-03-09 15:37:16 得分 0
顶!!!!!!!!!!!!!!!!!!Top
12 楼sophia2000(喝血社会)回复于 2006-03-09 15:49:23 得分 0
谁来帮绑我啊Top
13 楼zx2002027(http://www.netyi.net/in.asp?id=zx2002027)回复于 2006-03-09 19:27:32 得分 2
参考下BufferedImage and Graphics2D class
并设置响应报头为image/jpegTop
14 楼yjh133(哈哈)回复于 2006-03-09 19:42:58 得分 5
用servlet可以吗?
image的src指向servlet的请求路径。设置其width和height
bImageByte 为你读到的图片byte[], res为response
res.setContentType ("image/jpeg") ;
ServletOutputStream servletOut = res.getOutputStream () ;
res.setContentLength ( bImgByte.length ) ;
servletOut.write ( bImgByte ) ;
servletOut.close () ;Top
15 楼vimson999(忘了决心忘记)回复于 2006-03-10 11:26:35 得分 20
response.reset();
response.setContentType("image/jpeg");
ByteArrayInputStream is = new ByteArrayInputStream(image.getImagedata());
BufferedImage bufferImage = ImageIO.read(is);
BufferedImage tag = new BufferedImage(Integer.parseInt(width), Integer.parseInt(height),
BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(bufferImage, 0, 0, Integer.parseInt(width), Integer.parseInt(height), null);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response);
encoder.encode(tag);//近JPEG编码
response.flush();
response.close();Top
16 楼vimson999(忘了决心忘记)回复于 2006-03-10 11:26:40 得分 0
response.reset();
response.setContentType("image/jpeg");
ByteArrayInputStream is = new ByteArrayInputStream(image.getImagedata());
BufferedImage bufferImage = ImageIO.read(is);
BufferedImage tag = new BufferedImage(Integer.parseInt(width), Integer.parseInt(height),
BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(bufferImage, 0, 0, Integer.parseInt(width), Integer.parseInt(height), null);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response);
encoder.encode(tag);//近JPEG编码
response.flush();
response.close();Top
17 楼bbbbcccc()回复于 2006-03-10 17:23:30 得分 0
http://valenhua.go3.icpcn.com/Top




