这是我的模型:
@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 文件。
将不胜感激任何帮助。
谢谢。