Resumo ItemProcessor

@Configuration public class selectFieldsUserDataProcessorConfig {
    private static Logger logger = LoggerFactory.getLogger(selectFieldsUserDataProcessorConfig.class);

    private int counter;

    @Bean            //esse UserDTO ele obtém através do ItemReader e retorna um User
    public ItemProcessor<UserDTO, User> selectFieldsUserDataProcessor() {
        return new ItemProcessor<UserDTO, User>() {
            @Override
            public User process(UserDTO item) throws Exception {
                User user = new User();
                user.setLogin(item.getLogin());
                user.setName(item.getName());
                user.setAvatarUrl(item.getAvatarUrl());
                logger.info("[PROCESSOR STEP] select user fields " + counter + user);
                counter++;
                return user;
            }
        };
    }
}

Resumo do Processo

Esse processor transforma um UserDTO em um User, selecionando apenas alguns campos, e incrementa o contador toda vez que um item é processado. Esse processamento é útil quando precisamos converter ou adaptar os dados entre o que é lido e o que é gravado no Spring Batch.

Atualizado