Super-CSV-Dozer API를 사용하여 CSV 정규화를 수행하고 싶습니다. 내가 좋아하는 콩의 형식에서 데이터의 정규화 된 표현을 갖고 싶어Super-CSV : "CSV 정규화"를 수행하는 방법은 무엇입니까?
ObjectA_ID,ObjectA_Name,ObjectB_ID,ObjectB_Name
1,A_Name1,10,B_Name1
1,A_Name1,11,B_Name2
1,A_Name1,12,B_Name3
...
2,A_Name2,20,B_Name11
2,A_Name2,21,B_Name12
2,A_Name2,22,B_Name13
...
과 (CsvDozerBeanReader
를 통해 예를 들어)이 파일을 읽은 후 :
나는 형태의 CSV 파일이
Class ObjectA {
private long id;
private String name;
private Collection objectBs;
...
}
Class ObjectB {
private long id;
private String name;
...
}
Super-CSV-Dozer에는 기본 제공 기능이 있습니까?
답장을 보내 주셔서 감사합니다. 나는 당신의 [answer] (http://stackoverflow.com/a/12504722/1068649)를 붉히지 만 그것이 그것을 이해한다면 그것은 내 문제를 해결하지 못한다. – user2463924
제 질문은 열이 아니라 CSV 행의 정규화입니다. 그래서 문제는 Super-CSV/Dozer 기능이 중복을 제거하고 "수퍼 테이블"(CVS 파일)을 여러 행으로 정규화하는 "행 기반"정규화를 수행하는 데 도움이되는지 여부입니다. 결과적인 Beans). 샘플에서는 대답하는 종속 Bean 컬렉션 (답변 모음)은 원래 csv 파일 내의 열 집합으로 모델링됩니다. 하지만 제 경우에는 csv 파일에 여러 행이 있습니다. 예를 들어 ObjectA의 데이터는 동일하게 유지되고 할당 된 ObjectB의 데이터가 변경됩니다. – user2463924
업데이트 주셔서 감사합니다! 내가 알고 싶었던 것만 큼 : 내가 직접해야할지 아니면 supercsv/dozer의 도움을 받아야하는지. – user2463924