【问题标题】:Mapping MySQL JSON column to hibernate value type将 MySQL JSON 列映射到休眠值类型
【发布时间】:2018-09-02 04:51:46
【问题描述】:

在 Java 代码中使用 JSON 列的最佳做法是什么?具体来说,我对能够使用休眠在 MySQL 数据库中保存和查询 JSON 列感兴趣..

@Entity
public class MyEntity {

    private String myField; // this field is a json column

    public MyEntity() {
    }
}

【问题讨论】:

  • 详细说明“合作”。
  • 如果您使用 JSR-353 javax.json 类,那么有一种方法可以自动转换字符串,只需将此依赖项添加到您的项目 mvnrepository.com/artifact/com.mopano/… 否则,您'只需使用手动转换或尝试并希望 JPA AttributeConverter 工作。

标签: java mysql json hibernate jpa


【解决方案1】:

Hibernate 中有一个很好的库来处理 JSON 类型。它被称为Hibernate Types,您可以向下滚动到 MySQL 部分以获取正确的示例。

还有一些使用 MySQL 的 JSON API inside query 的示例:

How to search JSON data in MySQL?

【讨论】:

  • 我在使用这个库时遇到异常,该库的值设置为 null 或嵌套超过一层的对象。有人对此有任何想法吗?
  • @DanielPatrick ,这个库基于通用的 Jackson 库,所以至少 null 的问题可以通过正确的 Jackson 映射器配置 fasterxml.github.io/jackson-annotations/javadoc/2.0.0/com/… 来解决。很高兴看到更具体的错误跟踪。
猜你喜欢
  • 2011-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-29
  • 1970-01-01
  • 1970-01-01
  • 2011-08-07
  • 2013-02-09
相关资源
最近更新 更多