Topic: 怎样存取、显示SQL Server中的Image字段?

  Print this page

1.怎样存取、显示SQL Server中的Image字段? Copy to clipboard
Posted by: wgz_jz
Posted on: 2004-09-25 22:42

图片内容保存在SQL Server的Image字段,在Java(尤其是JBuilder)中如何通过JDBC存取、显示图片内容?
在此先表示感谢。

2.Re:怎样存取、显示SQL Server中的Image字段? [Re: wgz_jz] Copy to clipboard
Posted by: AnthonyPig
Posted on: 2004-09-25 22:54

just look javax.imageIO.*

3.Re:怎样存取、显示SQL Server中的Image字段? [Re: wgz_jz] Copy to clipboard
Posted by: yipsilon
Posted on: 2004-09-26 00:01

应该是 set/getBinaryStream

4.Re:怎样存取、显示SQL Server中的Image字段? [Re: wgz_jz] Copy to clipboard
Posted by: wgz_jz
Posted on: 2004-10-02 00:24

先对楼上的两位表示感谢。
我已查过 set/getBinaryStream 的资料。但现在的问题是Image字段内容已读到了
BufferedInputStream中,但是 jLabel1.SetIcon(...)就是显示不出来,而加载一张图片文件就可以显示出来,请问这个问题该如何解决?(IDE 是 JBuilderX)

部分程序代码如下:

int MAX_IMAGE_SIZE = 50000000;//50MB
byte Imgbuf[] = new byte[MAX_IMAGE_SIZE];

int count = 0;
BufferedInputStream imgStream = new BufferedInputStream(queryDataSet1.getBinaryStream("图"));
if (imgStream != null) {
try {
count = imgStream.read(Imgbuf);
} catch (IOException ieo) {
System.err.println("Couldn't read stream from database");
}

try {
imgStream.close();
} catch (IOException ieo) {
System.err.println("Can't close stream");
}

if (count <= 0) {
System.err.println("No pictures in database");
} else {
// jLabel1.setIcon(new ImageIcon(getClass().getResource("a7-11.jpg")));
//加载图片文件就可以显示
jLabel1.setIcon(new ImageIcon(Toolkit.getDefaultToolkit().createImage(Imgbuf)));
//从库中Image字段读取的图片大小等信息都对,可就是显示不出来。
}

5.Re:怎样存取、显示SQL Server中的Image字段? [Re: wgz_jz] Copy to clipboard
Posted by: wgz_jz
Posted on: 2004-10-14 23:00

用 JBuilderX 的 JDBLabel 已经解决了。谢谢大家。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923