質問編集履歴

2

added tag Spring Boot

2020/03/27 13:40

投稿

f97one
f97one

スコア29

test CHANGED
File without changes
test CHANGED
File without changes

1

Job定義が複数あり、起動時に実行されるJobをプロパティ指定で限定している旨を追加

2020/03/27 13:40

投稿

f97one
f97one

スコア29

test CHANGED
File without changes
test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
  @Bean
30
30
 
31
- public Job job1(JobExecutionListener listener Step step1, Step step2) {
31
+ public Job job1(JobExecutionListener listener, Step step1, Step step2) {
32
32
 
33
33
  return jobBuilderFactory.get("job_name_1")
34
34
 
@@ -48,13 +48,45 @@
48
48
 
49
49
 
50
50
 
51
+ 追記:
52
+
53
+ また、上記Jobの一部を切り出した
54
+
55
+
56
+
57
+ ```Java
58
+
59
+ @Bean
60
+
61
+ public Job job2(JobExecutionListener listener, Step step2) {
62
+
63
+ return jobBuilderFactory.get("job_name_2")
64
+
65
+ .listener(listener)
66
+
67
+ .incrementer(new RunIdIncrementer())
68
+
69
+ .start(step2)
70
+
71
+ .build();
72
+
73
+ }
74
+
75
+ ```
76
+
77
+
78
+
79
+ もあり、 ``spring.batch.job.names`` を外部から与えてそれぞれを実行し分ける仕組みがあります。
80
+
81
+
82
+
51
83
  この状態でも ``gradle bootJar`` でバッチの Jar を作成後
52
84
 
53
85
 
54
86
 
55
87
  ```PowerShell
56
88
 
57
- PS > java -jar batch.jar "date=$(Get-Date -Format 'o')"
89
+ PS > java "-Dspring.batch.job.names=job_name_1" -jar batch.jar "date=$(Get-Date -Format 'o')"
58
90
 
59
91
  ```
60
92