如何在Java SE 1.5.0中创建带有byte[]输入的java.sql.Blob对象?
我想从byte[]输入创建一个Blob对象,以使用更新表。在 J2SE 6 中,我们有 java.sql.Connection#createBlob()
来完成此操作。J2SE 1.5.0 中是否有类似的功能?在 J2SE 1.5.0 中使用数据更新 BLOB 类型列的最佳方法是什么?PreparedStatement#setBlob()
byte[]
我想从byte[]输入创建一个Blob对象,以使用更新表。在 J2SE 6 中,我们有 java.sql.Connection#createBlob()
来完成此操作。J2SE 1.5.0 中是否有类似的功能?在 J2SE 1.5.0 中使用数据更新 BLOB 类型列的最佳方法是什么?PreparedStatement#setBlob()
byte[]
使用串行字节的示例:
import java.sql.Blob;
import javax.sql.rowset.serial.SerialBlob;
byte[] byteArray = .....;
Blob blob = new SerialBlob(byteArray);
您完全不必担心创建 Blob
对象。将它们视为数据库上的 blob,并在 Java 中将其视为 blob。例如:byte[]
@Entity
@Table(name = "some.table")
public class MyEntity
{
@Id
int myId;
@Lob
byte[] myBlob;
// snip getters & setters
}
如果您真的打算自己创建实例,则可以使用 SerialBlob
实现:Blob
byte[] bytes = ...;
Blob myBlob = new SerialBlob(bytes);