有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用Hibernate向postgresql表插入json值

在我的postgreSQL DB(9.2)中有一个表,其列类型为json。我正在使用Hibernate并从Tim Fulmer建议的Mapping postgreSQL JSON column to Hibernate value type实现代码示例,但我一直得到以下异常:

ERROR: column "jsonobject" is of type json but expression is of type character varying
Hint: You will need to rewrite or cast the expression.

我不想使用这个表达式,因为它不被推荐。 当我使用一个预先生成的表,并且该列是json类型时,我发现了这个错误。当我更改Hibernate配置以为自己构建表时,我不会得到异常,并且会将值插入到新创建的表中,但此列的类型是“字符变化(255)”而不是JSON

我敢打赌,我的实现中遗漏了一些东西,但我不明白是什么。 我该去哪里看? 我甚至试图在我的代码中设置断点,但我没有达到它们

谢谢


共 (1) 个答案

  1. # 1 楼答案

    找到解决方案后,我的项目中确实缺少以下定义。 在表的xml映射文件中,我必须对特定字段使用type=“com.example.StringJsonUserType”,而不是type=“java.lang.String” 因此,本专栏的映射是:

    <property name="someobjects" type="com.example.StringJsonUserType">
        <column name="jsonobject" />
    </property>
    

    萨吉