Skip to content

Commit e5be893

Browse files
committed
Refactored Configuration property validation example
1 parent 5c09968 commit e5be893

File tree

5 files changed

+26
-25
lines changed

5 files changed

+26
-25
lines changed
Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,34 @@
11
plugins {
2-
id 'java'
3-
id 'org.springframework.boot' version '3.2.5'
4-
id 'io.spring.dependency-management' version '1.1.4'
2+
id 'java'
3+
id 'org.springframework.boot' version '3.2.5'
4+
id 'io.spring.dependency-management' version '1.1.4'
55
}
66

77
group = 'com.stacktips'
88
version = '0.0.1-SNAPSHOT'
99

1010
java {
11-
sourceCompatibility = '17'
11+
sourceCompatibility = '17'
1212
}
1313

1414
configurations {
15-
compileOnly {
16-
extendsFrom annotationProcessor
17-
}
15+
compileOnly {
16+
extendsFrom annotationProcessor
17+
}
1818
}
1919

2020
repositories {
21-
mavenCentral()
21+
mavenCentral()
2222
}
2323

2424
dependencies {
25-
implementation 'org.springframework.boot:spring-boot-starter-web'
26-
compileOnly 'org.projectlombok:lombok'
27-
annotationProcessor 'org.projectlombok:lombok'
28-
29-
testImplementation 'org.springframework.boot:spring-boot-starter-test'
30-
implementation 'org.springframework.boot:spring-boot-starter-validation:3.2.4'
25+
implementation 'org.springframework.boot:spring-boot-starter-web'
26+
implementation 'org.springframework.boot:spring-boot-starter-validation'
27+
compileOnly 'org.projectlombok:lombok'
28+
annotationProcessor 'org.projectlombok:lombok'
29+
testImplementation 'org.springframework.boot:spring-boot-starter-test'
3130
}
3231

3332
tasks.named('test') {
34-
useJUnitPlatform()
33+
useJUnitPlatform()
3534
}

configuration-property-validation/src/main/java/com/stacktips/app/ConfigurationPropertyValidationApplication.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.stacktips.app;
22

3-
import com.stacktips.app.service.ImportService;
4-
import lombok.AllArgsConstructor;
3+
import com.stacktips.app.service.ImporterService;
54
import lombok.RequiredArgsConstructor;
65
import org.springframework.boot.CommandLineRunner;
76
import org.springframework.boot.SpringApplication;
@@ -11,7 +10,7 @@
1110
@SpringBootApplication
1211
public class ConfigurationPropertyValidationApplication implements CommandLineRunner {
1312

14-
private final ImportService service;
13+
private final ImporterService service;
1514

1615
public static void main(String[] args) {
1716
SpringApplication.run(ConfigurationPropertyValidationApplication.class, args);

configuration-property-validation/src/main/java/com/stacktips/app/config/ImporterConfig.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package com.stacktips.app.config;
22

3-
import jakarta.validation.constraints.*;
3+
import jakarta.validation.constraints.Max;
4+
import jakarta.validation.constraints.NotEmpty;
5+
import jakarta.validation.constraints.Pattern;
6+
import jakarta.validation.constraints.Positive;
47
import lombok.Getter;
58
import lombok.Setter;
69
import lombok.ToString;
@@ -16,11 +19,11 @@
1619
@ConfigurationProperties(prefix = "importer.service")
1720
public class ImporterConfig {
1821

19-
@NotNull
22+
@NotEmpty
2023
String filePath;
2124

22-
@NotNull
23-
@Pattern(regexp = "\\.csv$|\\.txt")
25+
@NotEmpty
26+
@Pattern(regexp = "\\.csv$|\\.txt$")
2427
String fileType;
2528

2629
@Positive

configuration-property-validation/src/main/java/com/stacktips/app/service/ImportService.java renamed to configuration-property-validation/src/main/java/com/stacktips/app/service/ImporterService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
@Slf4j
99
@Service
1010
@RequiredArgsConstructor
11-
public class ImportService {
11+
public class ImporterService {
1212

1313
private final ImporterConfig importerConfig;
1414

configuration-property-validation/src/main/resources/application.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ spring:
55
importer:
66
service:
77
filePath: /nfs/files
8-
fileType: '.md'
9-
threadPoolSize: 3
8+
fileType: '.docx'
9+
threadPoolSize: 30

0 commit comments

Comments
 (0)