Apache camel 使用驼峰路由时将列标题获取到CSV

Apache camel 使用驼峰路由时将列标题获取到CSV,apache-camel,Apache Camel,我有一个要求,我必须从表中获取数据,包括列名,并将其保存到CSV。我编写了如下代码,只从表而不是列标题中获取数据。有人能帮我吗 public void configure() throws Exception { from("restlet:http://localhost:8583/.....") .setBody(simple("select * from userDetails")) .to("jdbc:dataSource") .marshal()

我有一个要求,我必须从表中获取数据,包括列名,并将其保存到CSV。我编写了如下代码,只从表而不是列标题中获取数据。有人能帮我吗

public void configure() throws Exception {
    from("restlet:http://localhost:8583/.....")
    .setBody(simple("select * from userDetails"))
    .to("jdbc:dataSource")
    .marshal()
    .csv()
    .to("file://C:/test.csv");
} 

感谢您的帮助……

在头-中的
to(“jdbc:dataSource”)
语句之后,您可以在exchange中使用列名

因此,基本上解决方案接近于此:

public void configure() throws Exception {
    from("restlet:http://localhost:8583/.....")
    .setBody(simple("select * from userDetails"))
    .to("jdbc:dataSource")
    .to("direct:setColumnNames")
    .split(body())
    .marshal().csv()
    .to("file://C:/test.csv");

    from("direct:setColumnNames")
    .getHeader("CamelJdbcColumnNames")
    .marshal().csv()
    .to("file://C:/test.csv");
}
我建议您为自己编写一个自定义处理器,也可以解决您的问题