<route>
<from uri="direct:in"/>
<!-- Set the HBase Row -->
<setHeader headerName="CamelHBaseRowId">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Value -->
<setHeader headerName="CamelHBaseValue">
<el>${in.body.value}</el>
</setHeader>
<to uri="hbase:mytable?operation=CamelHBasePut&family=myfamily&qualifier=myqualifier"/>
</route>
<route>
<from uri="direct:in"/>
<!-- Set the HBase Row -->
<setHeader headerName="CamelHBaseRowId">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Value -->
<setHeader headerName="CamelHBaseValue">
<el>${in.body.value}</el>
</setHeader>
<to uri="hbase:mytable?operation=CamelHBasePut&family=myfamily&qualifier=myqualifier"/>
</route>
Copy to ClipboardCopied!Toggle word wrapToggle overflow
上面的路由假定消息正文包含一个对象,它有一个 id 和 value 属性,并将值内容存储在 id 指定的行中的 HBase 列中 myfamily:myqualifier 中。如果需要指定多个列/值对,只需指定额外的列映射。请注意,您必须使用第二条标题、eg RowId2、RowId3、RowId4 等数字。只有 1st 标头没有数字 1。
<route>
<from uri="direct:in"/>
<!-- Set the HBase Row 1st column -->
<setHeader headerName="CamelHBaseRowId">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Row 2nd column -->
<setHeader headerName="CamelHBaseRowId2">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Value for 1st column -->
<setHeader headerName="CamelHBaseValue">
<el>${in.body.value}</el>
</setHeader>
<!-- Set the HBase Value for 2nd column -->
<setHeader headerName="CamelHBaseValue2">
<el>${in.body.othervalue}</el>
</setHeader>
<to uri="hbase:mytable?operation=CamelHBasePut&family=myfamily&qualifier=myqualifier&family2=myfamily&qualifier2=myqualifier2"/>
</route>
<route>
<from uri="direct:in"/>
<!-- Set the HBase Row 1st column -->
<setHeader headerName="CamelHBaseRowId">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Row 2nd column -->
<setHeader headerName="CamelHBaseRowId2">
<el>${in.body.id}</el>
</setHeader>
<!-- Set the HBase Value for 1st column -->
<setHeader headerName="CamelHBaseValue">
<el>${in.body.value}</el>
</setHeader>
<!-- Set the HBase Value for 2nd column -->
<setHeader headerName="CamelHBaseValue2">
<el>${in.body.othervalue}</el>
</setHeader>
<to uri="hbase:mytable?operation=CamelHBasePut&family=myfamily&qualifier=myqualifier&family2=myfamily&qualifier2=myqualifier2"/>
</route>
Copy to ClipboardCopied!Toggle word wrapToggle overflow
务必记住,您可以使用 uri 选项、邮件标题或两者的组合。建议将恒定值指定为 uri 和动态值作为标头。如果某些内容都定义为标题和 uri 的一部分,则将使用标题。