Рубрики
Без рубрики

Пример прослушивателей весенних пакетов

– Пример прослушивателей весенней партии

В весенней партии есть шесть “слушателей” для перехвата выполнения шага, я считаю, что имя класса должно быть понятным.

  1. Пошаговый список действий
  2. Средство для чтения элементов
  3. Список элементов
  4. Составитель статей
  5. Блоклистер
  6. Скиплистер

1. Пример слушателя

Три примера слушателя: ничего не делайте, только распечатайте сообщение.

package com.mkyong.listeners;

import org.springframework.batch.core.ExitStatus;
import org.springframework.batch.core.StepExecution;
import org.springframework.batch.core.StepExecutionListener;

public class CustomStepListener implements StepExecutionListener {

	@Override
	public void beforeStep(StepExecution stepExecution) {
		System.out.println("StepExecutionListener - beforeStep");
	}

	@Override
	public ExitStatus afterStep(StepExecution stepExecution) {
		System.out.println("StepExecutionListener - afterStep");
		return null;
	}

}
package com.mkyong.listeners;

import org.springframework.batch.core.ItemReadListener;
import com.mkyong.Domain;

public class CustomItemReaderListener implements ItemReadListener {

	@Override
	public void beforeRead() {
		System.out.println("ItemReadListener - beforeRead");
	}

	@Override
	public void afterRead(Domain item) {
		System.out.println("ItemReadListener - afterRead");
	}

	@Override
	public void onReadError(Exception ex) {
		System.out.println("ItemReadListener - onReadError");
	}

}
package com.mkyong.listeners;

import java.util.List;
import org.springframework.batch.core.ItemWriteListener;
import com.mkyong.Domain;

public class CustomItemWriterListener implements ItemWriteListener {

	@Override
	public void beforeWrite(List items) {
		System.out.println("ItemWriteListener - beforeWrite");
	}

	@Override
	public void afterWrite(List items) {
		System.out.println("ItemWriteListener - afterWrite");
	}

	@Override
	public void onWriteError(Exception exception, List items) {
		System.out.println("ItemWriteListener - onWriteError");
	}

}

2. Пакетные Задания

Пакетное задание, прикрепленное над тремя слушателями.

    
    
    

    
	
	    
		
		    
			
			
			
		    
	    
	
    

Предположим, загружены 3 записи из csv-файла и запишите их куда-нибудь, вот вывод консоли:

StepExecutionListener - beforeStep

ItemReadListener - beforeRead
ItemReadListener - afterRead
ItemWriteListener - beforeWrite
ItemWriteListener - afterWrite

ItemReadListener - beforeRead
ItemReadListener - afterRead
ItemWriteListener - beforeWrite
ItemWriteListener - afterWrite

ItemReadListener - beforeRead
ItemReadListener - afterRead
ItemWriteListener - beforeWrite
ItemWriteListener - afterWrite

StepExecutionListener - afterStep

Скачать Исходный Код

Рекомендации

  1. Перехват Выполнения Шага
  2. Пошаговый список javadoc
  3. Средство для чтения элементов Явадок
  4. Список элементов Явадок
  5. Составитель статей Явадок
  6. Список блоков javadoc
  7. Скиплистер javadoc

Оригинал: “https://mkyong.com/spring-batch/spring-batch-listeners-example/”