[SPRING] ItemReader 및 ItemWriter를 사용하지 않고 Spring 배치 작업을 작성할 수 있습니까?
SPRINGItemReader 및 ItemWriter를 사용하지 않고 Spring 배치 작업을 작성할 수 있습니까?
우리 프로젝트에서는 Spring Batch 2.2와 함께 Quartz 스케줄러를 작성했다.
내 요구 사항에 따라 모든 GlassFish 클러스터의 구성 캐시를 새로 고치기 위해 응용 프로그램 구성 등록 정보를 가져 오는 스케줄러를 실행하고 싶습니다.
그래서 File Read / Write 작업에 사용되는 ItemWriter와 ItemReader가 필요 없다. 그래서 ItemReader와 ItemWriter를 제거 할 수 있습니까?
내 직업 구성은 다음과 같습니다.
<batch:job id="reportJob">
<batch:step id="step1">
<batch:tasklet>
<!--I want to remove ItemReader and ItemWriter as its not used -->
<batch:chunk reader="ItemReader" writer="ItemWriter"
commit-interval="10">
</batch:chunk>
</batch:tasklet>
</batch:step>
<batch:listeners>
<batch:listener ref="simpleListener"/>
</batch:listeners>
</batch:job>
<bean id="jobDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
<!-- Cache Refresh code is written here : JobLauncherDetails.java file -->
<property name="jobClass" value="com.mkyong.quartz.JobLauncherDetails" />
<property name="group" value="quartz-batch" />
<property name="jobDataAsMap">
<map>
<entry key="jobName" value="reportJob" />
<entry key="jobLocator" value-ref="jobRegistry" />
<entry key="jobLauncher" value-ref="jobLauncher" />
<entry key="param1" value="mkyong1" />
<entry key="param2" value="mkyong2" />
</map>
</property>
</bean>
JobClass JobLauncherDetails.java에서 캐시를 새로 고치려면 비즈니스 로직을 작성한다. 그래서 ItemReader와 ItemWriter를 제거 할 수 있습니까? 가능한 대안이 있습니까?
해결법
-
==============================
1.작업 표시 줄 사용
작업 표시 줄 사용
<job id="reportJob"> <step id="step1"> <tasklet ref="MyTaskletBean" /> </step> <!-- Other config... --> </job> class MyTasklet implements Tasklet { @Override public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception { } }
공식 문서에서 5.2 장의 태스크 릿에 대한 자세한 내용을 볼 수 있습니다.
from https://stackoverflow.com/questions/22680648/can-we-write-a-spring-batch-job-without-itemreader-and-itemwriter by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring MVC를 사용하여 <form : input type = "file"> 값 유지하기 (0) | 2019.01.22 |
---|---|
[SPRING] Jersey 2 + Spring : @Autowired는 null입니다. (0) | 2019.01.22 |
[SPRING] ServletRequestBindingException에 대한 Spring3 @ExceptionHandler (0) | 2019.01.22 |
[SPRING] 키 'PRIMARY'에 대한 중복 항목 'string1-string2' (0) | 2019.01.22 |
[SPRING] JSP 페이지에서 렌더링되지 않은 스크립트 태그 (Spring + Tiles + JSPX 사용) (0) | 2019.01.22 |