【问题标题】:Creating MySQL JSON column using Java Spring Boot使用 Java Spring Boot 创建 MySQL JSON 列
【发布时间】:2018-05-15 23:16:23
【问题描述】:

我正在尝试使用 Spring Boot 将 Jackson json 对象插入 MySQL 5.7+。我知道 MySQL 5.7+ 可以存储 Json 数据类型,但我不知道如何使用 JPA Entity 创建 Json 列。 这是我正在尝试实现的示例代码:

@Entity
@Table(name = "example")
public class Example {
    @Id
    @Column(name = "id")
    private String id;

    @Column(name = "json_data", nullable=false, columnDefinition = "JSON")
    private JsonNode jsonData;
}

我尝试将“JSON”放在 columnDefinition 中,但休眠报告此类型不受支持,因此我想知道任何可用的解决方案。

【问题讨论】:

  • 我不相信 hibernate 有一个内部映射器到杰克逊,例如,我认为你必须将它映射为字符串,然后创建一个 get 方法将它解析为你想要的

标签: java mysql spring-boot jpa-2.0 hibernate-mapping


【解决方案1】:

现在你可以使用 com.mysql.cj.xdevapi.JsonArray使用mysql-connector-java 8+

作为

 @Column(name = "json_data", columnDefinition = "json")
    private JsonArray jsonData;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-09
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2021-04-21
    • 2021-09-16
    • 1970-01-01
    相关资源
    最近更新 更多