我有一个蓝图,我试图写东西给SQL(camel sql)。我似乎无法提取我想要使用的变量:
<to id="myid" uri="sql:insert into RESTORE_DATA (feedFrom, queueId) values ('${headers.RESTORE_MESSAGEID}', '${headers.RESTORE_DEST}')?dataSource=myDataSource"/>
无法解决标题中的变量。如果我使用日志,我可以看到真正的价值观:
<log message="dest = ${headers.RESTORE_DEST}" loggingLevel="INFO"/>
我应该使用什么语法?为什么这些变量以&#39; $&#39;开头? ?
答案 0 :(得分:1)
阅读文档,其中显示您需要使用语法:#${header.xxx}
:https://github.com/apache/camel/blob/master/components/camel-sql/src/main/docs/sql-component.adoc
例如
<to id="myid" uri="sql:insert into RESTORE_DATA (feedFrom, queueId) values (':#${headers.RESTORE_MESSAGEID}', ':#${headers.RESTORE_DEST}')?dataSource=myDataSource"/>
此问题的标题也具有误导性