空 @Link 字段不在 CSV 中,缺少列

Empty @Link fields not in CSV, missing columns

我正在尝试生成包含来自多个实体的字段的 CSV 文件。在我的骆驼路线中,我的实体有一个 BindyCsvDataFormat。但是,如果 SubEntity 为空,则 SubEntity 字段不会作为“”导出到 CSV 文件。所以某些行缺少列。 MainEntity 中的空值导出为“”。当 SubEntity 为空时,如何配置 Bindy 将 SubEntity 列导出为“”?

实体像这样链接在一起:

@Entity
@CsvRecord(separator=",", generateHeaderColumns=true)
public class MainEntity {

    @DataField(pos = 1, position = 1, columnName="firstColumn")
    private String column;

    @ManyToOne
    @Link
    private SubEntity subEntity;
    ...
}

@Entity
@Link
public class SubEntity {

    @DataField(pos = 2, position = 2, columnName="secondColumn")
    private String name;
    ...
}

我最终没有使用 @Link,因为它无法处理空对象。相反,我像这样创建了一个 DTO:

@CsvRecord(separator=",", generateHeaderColumns=true)
public class EntityDTO {

    @DataField(pos = 1, position = 1, columnName="firstColumn")
    private String column;

    @DataField(pos = 2, position = 2, columnName="secondColumn")
    private String subEntityName;
}