如何在Hibernate中注释blob列? 到目前为止,我有一个课程:
@Column( name = "FILEIMAGE" )
private byte[ ] fileimage ;
//
public byte[ ] getFileimage ( ) { return this.fileimage ; }
public void setFilename ( String filename ) { this.filename = filename ; }
答案 0 :(得分:48)
@Lob应该为blob和clob做一些技巧(使用String作为类型)
@Column( name = "FILEIMAGE" )
@Lob(type = LobType.BLOB)
private byte[] fileimage;
答案 1 :(得分:2)
我在JBoss 7和Java 7中使用了hibernate 4,发现我的表中的BLOB
列不像我对hibernate 2那样工作。幸运的是,我通过阅读其他人解决方案解决了这个问题。
我的解决方案:
type="blob"
更改为type="binary"
byte[]
代替BLOB
(javax.sql
)byte[]
读取/写入BLOB
列;如果使用java.sql.ResultSet
从数据库读取,请确保使用getBytes()而不是getBlob()
方法。