From: Kai Moritz Date: Sat, 9 Apr 2022 07:52:59 +0000 (+0200) Subject: Validierung erfolgt über spring-boot-starter-validation X-Git-Tag: deserialization-synchroner-test~17^2~2 X-Git-Url: http://juplo.de/gitweb/?a=commitdiff_plain;h=7a41d0ba78a49b271962549015c1f867d7055030;p=demos%2Fkafka%2Ftraining Validierung erfolgt über spring-boot-starter-validation --- diff --git a/pom.xml b/pom.xml index 54bb695..6d039eb 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,10 @@ org.springframework.boot spring-boot-starter-web + + org.springframework.boot + spring-boot-starter-validation + org.springframework.boot spring-boot-starter-actuator diff --git a/src/main/java/de/juplo/kafka/Application.java b/src/main/java/de/juplo/kafka/Application.java index dd4b20a..de4b66d 100644 --- a/src/main/java/de/juplo/kafka/Application.java +++ b/src/main/java/de/juplo/kafka/Application.java @@ -5,7 +5,6 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; -import org.springframework.util.Assert; import java.util.concurrent.Executors; @@ -21,11 +20,6 @@ public class Application @Bean public EndlessConsumer consumer() { - Assert.hasText(properties.getBootstrapServer(), "consumer.bootstrap-server must be set"); - Assert.hasText(properties.getGroupId(), "consumer.group-id must be set"); - Assert.hasText(properties.getClientId(), "consumer.client-id must be set"); - Assert.hasText(properties.getTopic(), "consumer.topic must be set"); - EndlessConsumer consumer = new EndlessConsumer( Executors.newFixedThreadPool(1), diff --git a/src/main/java/de/juplo/kafka/ApplicationProperties.java b/src/main/java/de/juplo/kafka/ApplicationProperties.java index dab3380..fa731c5 100644 --- a/src/main/java/de/juplo/kafka/ApplicationProperties.java +++ b/src/main/java/de/juplo/kafka/ApplicationProperties.java @@ -3,16 +3,31 @@ package de.juplo.kafka; import lombok.Getter; import lombok.Setter; import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.validation.annotation.Validated; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; @ConfigurationProperties(prefix = "consumer") +@Validated @Getter @Setter public class ApplicationProperties { + @NotNull + @NotEmpty private String bootstrapServer; + @NotNull + @NotEmpty private String groupId; + @NotNull + @NotEmpty private String clientId; + @NotNull + @NotEmpty private String topic; + @NotNull + @NotEmpty private String autoOffsetReset; }