2011-06-08 10 views
16

PreparedStatement#setBlob() kullanarak bir tabloyu güncellemek için bir byte [] girişinden bir Blob nesnesi oluşturmak istiyorum. J2SE 6'da bunu yapmak için java.sql.Connection#createBlob() var. J2SE 1.5.0'da buna benzer bir şey var mı? J2SE 1.5.0'da bir BLOB tipi sütunu byte[] verileriyle güncellemenin en iyi yolu nedir?Java SE 1.5.0'da bir byte [] girişi ile java.sql.Blob nesnesi nasıl oluşturulur?

+1

kendini bir Blob örneğini oluşturarak gerçekten niyetli iseniz

@Entity @Table(name = "some.table") public class MyEntity { @Id int myId; @Lob byte[] myBlob; // snip getters & setters } 

, sen SerialBlob uygulanmasını kullanabilirsiniz Sorunuza cevap, kullandığınız jdbc sürücüsü ve hangi veritabanını kullandığınızla çok ilgilidir. – Kaj

cevap

23

örneği, SerialBlob kullanarak:

import java.sql.Blob; 
import javax.sql.rowset.serial.SerialBlob; 

byte[] byteArray = .....; 
Blob blob = new SerialBlob(byteArray); 
0

Blob'un kendisini gerçekten oluşturmanıza gerek yoktur. Hazırlanmış bir deyim oluştururken, blob parametresini ayarlarken parametre için bir ByteArrayInputStream kullanın.

6

Blob nesneleri oluşturma konusunda endişelenmenize gerek yoktur. Onları veritabanında blobs olarak ve Java'da byte[] s olarak ele alın. Örneğin:

byte[] bytes = ...; 
Blob myBlob = new SerialBlob(bytes); 
İlgili konular