缺少将类型映射字节[]映射到bytea的方法-plJava

时间:2018-07-16 09:32:22

标签: java postgresql pljava

我想执行一个plJava函数,例如:

@Function
public static byte[] enrypt_rsa(String message, byte[] public_key)
{...}

但是,如果我尝试使用maven(MVN清洁程序包)创建.jar文件,则会收到以下错误消息:

  

“未知的到SQL类型的映射”

但是plJava Wiki表示它将Java类型的byte []映射到bytea的postgresql类型(请参见:https://github.com/tada/pljava/wiki/Default-type-mapping)。

有人知道我如何解决此问题或强制执行我需要的映射吗? (或者您还有其他想法如何使用PostgreSQL函数创建rsa密钥和解密/加密消息?)

1 个答案:

答案 0 :(得分:0)

plJava开发人员向我展示了一种解决方法,我想分享这种简单的解决方案,以防其他人找到此帖子。通常这不是必需的,但就我而言是...

我们可以自己定义类型,使代码看起来像

@Function(type = "bytea")
public static byte[] enrypt_rsa(String message,@SQLType("bytea") byte[] public_key)
{...}

现在没有任何Maven错误->问题已解决:)