Comment une colonne blob est-elle annotée dans Hibernate? Jusqu'à présent, j'ai une classe qui a:
@Column( name = "FILEIMAGE" )
private byte[ ] fileimage ;
//
public byte[ ] getFileimage ( ) { return this.fileimage ; }
public void setFilename ( String filename ) { this.filename = filename ; }
@Lob devrait faire l'affaire pour blob et clob (utilisez String comme type)
@Column( name = "FILEIMAGE" )
@Lob(type = LobType.BLOB)
private byte[] fileimage;
J'ai utilisé hibernate 4 dans JBoss 7 et Java 7, et j'ai découvert que la colonne BLOB
dans ma table ne fonctionne pas comme ce que j'ai pour hibernate 2. Heureusement, j'ai résolu en lisant les solutions des autres. Ma solution:
type="blob"
en type="binary"
byte[]
Au lieu de BLOB
(javax.sql
)byte[]
Pour lire/écrire dans la colonne BLOB
; si vous lisez à partir de la base de données en utilisant Java.sql.ResultSet
, assurez-vous d'utiliser la méthode getBytes () au lieu de la méthode getBlob()
.