我有PostgreSQL数据库,并且有数据类型为“ bytea”的列“ image”。我无法修改列或数据库配置。JPA注释的POJO包含Followign映射
@Column(name="image") private byte[] image;
返回的数据采用以下格式(这只是示例)
WF5ClN6RlpLZ0hJTUdNQ1FJWmkwcFVGSUdNQ0lDWUE5TUEvanRFeElwK2x0M2tBQUFBQVNVVk9SSzVDWUlJPQo=
当我将此数据写入文件(.jpeg)时,照片查看器会显示“此文件已损坏”。我也了解实际的图像字节数据看起来与上面的示例有所不同。我读过一些博客,其中提到PostgreSQL将十六进制转换应用于bytea数据。不论是否使用JPA,如何将其还原为原始数据?
数据库-PostgresSQL版本9.5.1
司机
<dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <version>9.4-1205-jdbc41</version> </dependency>
返回的数据看起来好像是base64编码的。在写入文件之前,您必须将其解码回二进制数据。