0

这是我的模型:

@CsvRecord(separator=",",generateHeaderColumns=true,isOrdered=true)
public class TestModel implements Serializable{
    @DataField(pos=1,position=2)
    String value1;
    @DataField(pos=2,position=1)
    String value2;
    //Getters and Setters

    //Constructor    
}

Bean处理器代码:

 public class TestProcessor {
    public List<TestModel> process(){
     List<TestModel> list=new ArrayList<>();
     list.add(new TestModel("Value1","Value2"));
     list.add(new TestModel("Value3","Value4");
     return list;
    }
 }

RouteBuilder 代码:

public class TestRouteBuilder extends RouteBuilder{
    @Override
    public void configure(){
    BindyCsvDataFormat bindy=new BindyCsvDataFormat(com.example.TestModel.class);
    from("timer:ping?period=1m").to("bean:testProcessor?method=process").marshal(bindy).to("file://C://CSV//messages?fileName=Test.csv");
    }
}

如果我省略 isOrdered=true 属性,则会生成 csv 文件。

但是我想对生成的 csv 中的列重新排序,如果模型中包含 isOrdered 属性,则根本不会生成 csv 文件。

将不胜感激任何帮助。

谢谢。

4

0 回答 0