Spring grupuje, jak odfiltrować zduplikowane elementy przed wysłaniem ich do ItemWriter
Czytam płaski plik (taki jak plik .csv z 1 wierszem na użytkownika, na przykład:
UserId; Data1;Date2
).
Ale jak sobie radzić ze zduplikowanym elementem niestandardowym w czytniku (gdzie nie ma listy wcześniej przeczytanych użytkowników ...)
stepBuilderFactory.get("createUserStep1").<User, User>chunk(1000).reader(flatFileItemReader)// FlatFileItemReader.writer(itemWriter)// For example JDBC Writer.build();
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
2 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
http://docs.spring.io/spring- batch/trunk/reference/html/readersAndWriters.html#filiteringRecords
http://docs.spring.io/spring-b ... cords
Anonimowy użytkownik
Potwierdzenie od:
http://docs.spring.io/spring- batch/trunk/reference/html/readersAndWriters.html#faultTolerant
http://docs.spring.io/spring-b ... ntGdy blok jest przywracany, elementy, które zostały zapisane w pamięci podręcznej podczas odczytu, mogą zostać ponownie przetworzone. Jeśli krok jest skonfigurowany do przełączania awaryjnego (zwykle pomijanie lub ponawianie próby), każdy używany ItemProcessor musi być zaimplementowany w idempotentny sposób.
Oznacza to, że w przykładzie Michaela na początku
przetwarzanie
użytkownik Użytkownik jest buforowany w zestawie i jeśli wystąpi awaria
dokumentacja
element, to jeśli krok jest bezpieczny, to
procesor
zostanie wykonany ponownie dla tego samego użytkownika i to
filtr
przefiltruje użytkownika.
Ulepszony kod: