Создать универсальный метод для экспорта данных с OpenCSV - PullRequest
0 голосов
/ 27 июня 2018

Я использую OpenCSV 3.8 для записи данных в файлы CSV.

У меня есть несколько классов, поезд, билеты ... Так что я не хочу писать один и тот же код для каждого класса.

Я сделал это (я удалил некоторые строки, которые не важны):

 public <T extends ExportDTO> void exportByTable(List<T> exportList) {
    Writer csvWriter = new FileWriter(csvPath);
    StatefulBeanToCsvBuilder<T> builder = new StatefulBeanToCsvBuilder<T>(csvWriter);

    StatefulBeanToCsv<T> sbc = builder
            .withSeparator(CSV_SEPARATOR)
            .build();

    sbc.write(exportList);

Каждый класс имеет ExportDTO в качестве суперкласса, в ExportDTO ничего нет, но в Ticket или Train у меня есть атрибуты с аннотациями (opencsv).

Но этот код записывает пустой CSV, потому что он принимает класс ExportDTO, у которого нет атрибута для записи CSV. (Я вызываю метод с List<Train> объектом)

Я что-то не так делаю? или для этого нельзя сделать универсальный метод?

...