要求是在组织中的多个项目(以 100 个为单位)的 Jira 摘录中读取并应用某些分析函数。 Jira 提取功能导出 CSV 文件,该文件可以具有多个同名列,例如评论、附件、组件。
在 POC 阶段,我使用 OpenCSV 读取 CSV 文件,但发现它没有像 Spring Batch 那样提供性能优化技术。
票证可以有任意数量的组件、评论和附件栏。 Spring批处理是否有一个Linemapper,可以将这些数据映射到OpenCSV Bean,如下所示:
public class JiraInboundRecord {
@CsvBindByName(column = "Issue key")
private String issueKey;
@CsvBindByName(column = "Description")
private String description;
@CsvBindAndJoinByName(column = "comments*", elementType = String.class)
private MultiValuedMap<String, String> comments;
@CsvBindAndJoinByName(column = "Components*", elementType = String.class)
private MultiValuedMap<String, String> components;
@CsvBindAndJoinByName(column = "Attachments*", elementType = String.class)
private MultiValuedMap<String, String> attachments;
Spring批处理是否有一个Linemapper可以将这些数据映射到OpenCSV Bean
不,OpenCSV 没有内置
LineMapper
。您需要创建一个自定义的。