当前位置: 首页 > 知识库问答 >
问题:

如何使用hibernate将自定义类型数组从postgres映射到java

微生青青
2023-03-14

我试图将postgres过程返回的自定义类型数组映射到java

我在postgres中有一个自定义类型为

CREATE TYPE public.customtype_sample AS(
    sampleid bigint,
    samplename character varying,
    samplevalue character varying
)

Hibernate和PostgreSQL中具有UserType的数组-->MappingException

Mayer more编写了一个实现sampletype数组的类,但我最终得到了这个异常

"could not execute query" 

原因:org.postgresql.util.psqlexception:方法org.postgresql.jdbc4.jdbc4Array.getArrayImpl(long,int,Map)尚未实现。

@Override
    public Object nullSafeGet(ResultSet rs, String[] names,
            SessionImplementor session, Object owner)
            throws HibernateException, SQLException {
        SampleType[] javaArray = null;
        Array array = (Array) rs.getArray(names[0]);
         if (!rs.wasNull()) {
         javaArray = (SampleType[]) array.getArray();//error occurs here 
         }
         return toReferenceType(javaArray);

    }

当我试图获取CustomType的数组时,可能会遇到一些问题,无法理解如何为CustomType的数组编写usertype类。任何帮助都将不胜感激。

共有1个答案

常乐
2023-03-14

我有相同的错误,我通过将PostgreSQL JDBC从9.2-1002-jdbc4升级到9.4-1201-jdbc41来修复它

 类似资料:
  • 问题内容: 有人可以向我展示如何在Hibernate中编写以下SQL并正确获取结果的示例吗? 如果可能的话,我想做的就是将结果放入自己的基类中: 我相信在JPA(使用)中是可能的,但是我还没有弄清楚如何在Hibernate(使用和)中做到这一点。 我试图更好地学习Hibernate,即使这个“简单”查询也令人困惑,无法知道Hibernate以哪种形式返回结果,以及如何将结果映射到我自己的(基)类中

  • 本文向大家介绍apache-spark 使用Gson将JSON映射到自定义类,包括了apache-spark 使用Gson将JSON映射到自定义类的使用技巧和注意事项,需要的朋友参考一下 示例 使用Gson,您可以读取JSON数据集并将其映射到自定义类MyClass。 由于Gson不可序列化,因此每个执行程序都需要自己的Gson对象。而且,MyClass必须可序列化才能在执行程序之间传递。 请注意

  • 我试图将请求体从邮递员映射到spring boot实体,

  • 让我们假设我有以下json 如何在java中创建一个自定义类来映射它?我试过这个班的形状 并且形状是 用Jackson地图绘制器绘制地图 正如预期的那样,给我一个错误: 我想要"0008005"作为字段值而不是字段键,这些值是根据API动态变化的,所以如何映射这个json,有没有其他直接的方法最后一个选项op自定义反序列化?

  • 问题内容: 我在使用hibernate 4.1.0映射的postgresql 9.3中使用 数组类型 时遇到一个特定问题。这种类型使我能够拥有真正强大的数据模型,而无需构建大量表和联接。 为了映射使用此特定类型存储的字段,我使用了UserType 无论如何,它可以与纯hibernate(hql)一起很好地工作,但我还需要将 sql本机查询 发送到我的数据库。当我这样做时,尽管进行了许多尝试,但我还

  • 我从一个xml模式生成java类,对于一个复杂类型,我希望jaxb使用一个现有的类,我有一个外部绑定定制文件。自定义类被解组为正确的,除了该类型的单个属性,该属性从未在java类中填充。 下面是类型/类问题的演示。 模式中定义的内容是: 读取匹配xml文件的代码段是: 在这个xml中阅读: 使用JAXB生成的Thing类(不使用自定义xjb),输出符合预期: 使用只有getters的自定义Thin