使用JavaSpringBoot创建MySQL JSON列

使用JavaSpringBoot创建MySQL JSON列,java,mysql,spring-boot,jpa-2.0,hibernate-mapping,Java,Mysql,Spring Boot,Jpa 2.0,Hibernate Mapping,我正在尝试使用SpringBoot将Jackson json对象插入MySQL 5.7+。我知道MySQL 5.7+可以存储Json数据类型,但我不知道如何使用JPA实体创建Json列。 下面是我试图实现的示例代码: @Entity @Table(name = "example") public class Example { @Id @Column(name = "id") private String id; @Column(name = "json_dat

我正在尝试使用SpringBoot将Jackson json对象插入MySQL 5.7+。我知道MySQL 5.7+可以存储Json数据类型,但我不知道如何使用JPA实体创建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;
}
我试图在columnDefinition中添加“JSON”,但hibernate报告不支持这种类型,因此我想知道任何可用的解决方案。

现在您可以使用
com.mysql.cj.xdevapi.JsonArray
使用mysql连接器Java8+

作为


我不相信hibernate有一个到Jackson的内部映射器,例如,我认为您必须将它映射为字符串,然后创建一个get方法,将它解析为您想要的内容
 @Column(name = "json_data", columnDefinition = "json")
    private JsonArray jsonData;