gpt4 book ai didi

java - Camel 路线执行中的继续行为

转载 作者:行者123 更新时间:2023-11-30 10:55:35 26 4
gpt4 key购买 nike

我想在路由中添加继续行为,我的路由如下

from("file:D:\\?fileName=abc.csv&noop=true").split().unmarshal().csv() 
.to("direct:insertToDb").end();

from("direct:insertToDb")
.to("direct:getDataId")
.to("direct:getDataParameters")
.to("direct:insertDataInDb");

from("direct:getDataId")
.to("sql:SELECT id FROM data WHERE name = :#name)
.choice()
.when(header("id").isGreaterThan(0) )
.setProperty("id", header("id"))
.otherwise()
.log("Error for")
.endChoice().end();

我希望如果 direct:getDataId 没有找到任何记录,我从 CSV get 跳过当前记录的路由执行,程序处理下一个请求。它将等于 continue 关键字。

我如何在 Apache Camel 路由中实现这一点?

最佳答案

您可以像这样修改您的路线:

from("file:D:\\?fileName=abc.csv&noop=true").split().unmarshal().csv() 
.to("sql:SELECT id FROM data WHERE name = :#name?outputHeader=id&outputType=SelectOne)
.choice().when(header("id").isGreaterThan(0))
.to("direct:getDataParameters")
.to("direct:insertDataInDb")
.end();

关于java - Camel 路线执行中的继续行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33310505/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com