java使用ApacheCamel框架将数据持久化为Oracle DB中的BLOB/CLOB数据类型
需要使用apachecamel框架将数据(XML)存储到oracle数据库中的BLOB数据类型中。 执行普通查询很好。但当我试图将数据持久化到BLOB中时,oracledb需要一个兼容的类型。 我尝试使用utl\u raw。尝试将原始数据转换为BLOB兼容类型时,将\u强制转换为\u raw
这适用于较小的数据,但当数据很大时(如超过2048个字符的大型请求XML),会抛出错误SQL错误:ORA-06502:PL/SQL:数值或值错误:原始变量长度太长
有人能告诉我如何使用ApacheCamel将超过2048个字符的数据存储在BLOB数据类型中吗
非常感谢您的帮助
# 1 楼答案
下面是一个使用HSQLDB进行测试时效果很好的示例(我手头没有Oracle数据库可供测试,但它的工作原理应该是一样的):
或者,它也可以使用输入流而不是字节数组: