java-如何使用带有无效返回参数的JPA 2.1 @NamedStoredProcedureQueries?

给定以下带注释的命名存储过程查询

@NamedStoredProcedureQueries({
    @NamedStoredProcedureQuery(
        name = "procedureName",
        procedureName = "stored_procedure"
    )
})

后执行

StoredProcedureQuery query = entityManager.createNamedStoredProcedureQuery("procedureName");
query.executeUpdate();

stored_procedure返回postgres void.

结果异常:由以下原因引起:org.hibernate.MappingException:JDBC类型的No Dialect映射:1111
.

如何解决

解决方法:

我通过使用一些拐杖代码解决了这个问题.

@sqlresultsetmapping(
    name = "VOID_MAPPING",
    classes = {
        @ConstructorResult(targetClass = VoidClass.class, columns = {})
    }
)

将resultSetMappings添加到@NamedStoredProcedureQuery.

 resultSetMappings = {
        "VOID_MAPPING"
 }

VoidClass只是一个空类.

public class VoidClass {}

但是,我希望有一个更好的解决方案.

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...