Hibernate Postgres Bytea检索问题

我正在使用Hibernate 4.0将jpegs存储到postgres

9.1.4中(jdbc是postgresql-9.1-901.jdbc4.jar)bytea列(byte

[]是hibernate实体,没有额外的类型def)。

hibernate存储过程工作正常,因为我可以使用数据库工具来转储bytea列并仍然获取jpeg。基本上是:

在managedBean中

byte [] bytes;

bytes = IOUtils.toByteArray(file.getInputstream());

entity.setImage(bytes);

此时,字节看起来像[-1,-40,-1,-32、0、16、74、70,…]

但是,问题始于我通过hibernate检索。数据似乎以某种方式被修改或损坏。

byte [] bytes;

bytes = entity.getImage();

此时,字节变为[-26、100、56、102、102、101、48、48,…]

hibernate的吸气剂是

@Column(name = "image")

public byte[] getImage() {

return image;

}

感谢任何人都可以提供帮助,谢谢!

回答:

在postgresql.conf中更改bytea_output =’escape’

或运行这个

ALTER DATABASE dbname SET bytea_output为’escape’;

以上是 Hibernate Postgres Bytea检索问题 的全部内容, 来源链接: utcz.com/qa/397549.html

回到顶部