Skip to content

Commit a91ad81

Browse files
committed
Apply some specification changes of Spring Batch 5 on 3.x tests
1 parent 46ced34 commit a91ad81

File tree

1 file changed

+24
-27
lines changed

1 file changed

+24
-27
lines changed

src/test/java/org/mybatis/spring/sample/config/SampleJobConfig.java

Lines changed: 24 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,12 @@
3434
import org.springframework.batch.core.Job;
3535
import org.springframework.batch.core.Step;
3636
import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
37-
import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
38-
import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
39-
import org.springframework.beans.factory.annotation.Autowired;
37+
import org.springframework.batch.core.job.builder.JobBuilder;
38+
import org.springframework.batch.core.repository.JobRepository;
39+
import org.springframework.batch.core.step.builder.StepBuilder;
40+
import org.springframework.batch.item.ItemProcessor;
41+
import org.springframework.batch.item.ItemReader;
42+
import org.springframework.batch.item.ItemWriter;
4043
import org.springframework.context.annotation.Bean;
4144
import org.springframework.context.annotation.Configuration;
4245
import org.springframework.core.convert.converter.Converter;
@@ -50,12 +53,6 @@
5053
@EnableBatchProcessing
5154
public class SampleJobConfig {
5255

53-
@Autowired
54-
private JobBuilderFactory jobBuilderFactory;
55-
56-
@Autowired
57-
private StepBuilderFactory stepBuilderFactory;
58-
5956
@Bean
6057
public DataSource dataSource() {
6158
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL)
@@ -66,15 +63,15 @@ public DataSource dataSource() {
6663
}
6764

6865
@Bean
69-
public PlatformTransactionManager transactionalManager() {
70-
return new DataSourceTransactionManager(dataSource());
66+
public PlatformTransactionManager transactionManager(DataSource dataSource) {
67+
return new DataSourceTransactionManager(dataSource);
7168
}
7269

7370
@Bean
74-
public SqlSessionFactory sqlSessionFactory() throws Exception {
71+
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
7572
PathMatchingResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();
7673
SqlSessionFactoryBean ss = new SqlSessionFactoryBean();
77-
ss.setDataSource(dataSource());
74+
ss.setDataSource(dataSource);
7875
ss.setMapperLocations(resourcePatternResolver.getResources("org/mybatis/spring/sample/mapper/*.xml"));
7976
org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
8077
configuration.setDefaultExecutorType(ExecutorType.BATCH);
@@ -83,10 +80,10 @@ public SqlSessionFactory sqlSessionFactory() throws Exception {
8380
}
8481

8582
@Bean
86-
public MyBatisCursorItemReader<User> reader() throws Exception {
83+
public MyBatisCursorItemReader<User> reader(SqlSessionFactory sqlSessionFactory) {
8784
// @formatter:off
8885
return new MyBatisCursorItemReaderBuilder<User>()
89-
.sqlSessionFactory(sqlSessionFactory())
86+
.sqlSessionFactory(sqlSessionFactory)
9087
.queryId("org.mybatis.spring.sample.mapper.UserMapper.getUsers")
9188
.build();
9289
// @formatter:on
@@ -98,10 +95,10 @@ public UserToPersonItemProcessor processor() {
9895
}
9996

10097
@Bean
101-
public MyBatisBatchItemWriter<Person> writer() throws Exception {
98+
public MyBatisBatchItemWriter<Person> writer(SqlSessionFactory sqlSessionFactory) {
10299
// @formatter:off
103100
return new MyBatisBatchItemWriterBuilder<Person>()
104-
.sqlSessionFactory(sqlSessionFactory())
101+
.sqlSessionFactory(sqlSessionFactory)
105102
.statementId("org.mybatis.spring.sample.mapper.PersonMapper.createPerson")
106103
.itemToParameterConverter(createItemToParameterMapConverter("batch_java_config_user", LocalDateTime.now()))
107104
.build();
@@ -120,24 +117,24 @@ public static <T> Converter<T, Map<String, Object>> createItemToParameterMapConv
120117
}
121118

122119
@Bean
123-
public Job importUserJob() throws Exception {
120+
public Job importUserJob(JobRepository jobRepository, Step step1) {
124121
// @formatter:off
125-
return jobBuilderFactory.get("importUserJob")
126-
.flow(step1())
122+
return new JobBuilder("importUserJob", jobRepository)
123+
.flow(step1)
127124
.end()
128125
.build();
129126
// @formatter:on
130127
}
131128

132129
@Bean
133-
public Step step1() throws Exception {
130+
public Step step1(JobRepository jobRepository, PlatformTransactionManager transactionManager, ItemReader<User> reader,
131+
ItemProcessor<User, Person> processor, ItemWriter<Person> writer) {
134132
// @formatter:off
135-
return stepBuilderFactory.get("step1")
136-
.<User, Person>chunk(10)
137-
.reader(reader())
138-
.processor(processor())
139-
.writer(writer())
140-
.transactionManager(transactionalManager())
133+
return new StepBuilder("step1", jobRepository)
134+
.<User, Person>chunk(10, transactionManager)
135+
.reader(reader)
136+
.processor(processor)
137+
.writer(writer)
141138
.build();
142139
// @formatter:on
143140
}

0 commit comments

Comments
 (0)