Bytea 使用 Spring Data JPA 和 Angular 在 Postgresql 中持久化和检索

问题描述

我正在将一个数组从我的 Angular 前端发送到 Spring Boot 后端,并且这个数组在 postgresql 数据库中作为字节持久化,但是当我通过从前端到后端的请求检索它时,我得到了一串字符。

如果有人能对此有所了解,我将不胜感激。

发送到后端的内容

const mapStatetoProps = (state:RootState,ownProps: OwnProps) => ({
  name: ownProps.name ?? 'foo'
})
{
     "image": [137,80,78,71,13,10,26,1,73,72,68,82,2,............,83,6,79,138,180,62,4,115,66,84,8,124,100,136,95,122,88,116,97,119,32,112,114]
}

我包含图像字段的实体类是:

What I receive from the backend:
{ "image": "iVBORw0KGgoAAAANSUhEUgAAAg..............RCKRSCQSiUQikUgkEolEIpFIJBKJRCKRSCTywsD8DaQezLUeSCTybCb+gUQikW8Yp6"
}

解决方法

您必须首先定义它是一个大对象并添加类型:

@Lob
@Type(type = "org.hibernate.type.BinaryType")
private byte[] image;

你可以先试试没有@Type

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...