使用Hibernate和Oracle DB存储JSON字段

时间:2018-10-26 15:17:31

标签: java json oracle hibernate blob

我在将Spring Boot连接到Oracle数据库时使用Hibernate。 我的Java实体之一是其中包含Jackson JsonNode对象的类,我想将其作为单个字段保留在数据库中。 Oracle建议将JSON存储为BLOB,但是Hibernate似乎不知道默认情况下如何将JsonNode转换为BLOB。下面的实体类示例:

@Entity    
public class MyEntity {
  @Id
  private Integer id;

  @Column(columnDefinition = "blob")
  private JsonNode data;
}

您如何建议我开始工作?我假设我需要编写某种转换类来与BLOB之间进行转换。

1 个答案:

答案 0 :(得分:0)

尚未测试,但假设它是您想要的解决方案
com.vladmihalcea:hibernate-types-52:2.7.0

@Entity
@TypeDef(
     name = "json",
     typeClass = JsonBlobType.class
)

public class MyEntity {
    @Id
    private Integer id;

    @Type(type = "json")
    private JsonNode data;
}