0 Tage Serie
java / intermediate
Snippet

Typsichere Konfiguration mit @ConfigurationProperties

@ConfigurationProperties bietet eine typsichere Möglichkeit, externe Eigenschaften (z.B. aus der application.yml) auf Java-Objekte abzubilden. Dies ist der Verwendung von @Value überlegen, da es hierarchische Strukturen, Validierung und einfacheres Refactoring unterstützt.

snippet.java
java
1
2
3
4
5
6
7
8
9
10
11
12
@ConfigurationProperties(prefix = "app.security")
@Component
public class SecurityConfig {
private String apiKey;
private List<String> allowedOrigins;
// Getters and Setters are required
public void setApiKey(String apiKey) { this.apiKey = apiKey; }
public void setAllowedOrigins(List<String> origins) { this.allowedOrigins = origins; }
public String getApiKey() { return apiKey; }
public List<String> getAllowedOrigins() { return allowedOrigins; }
}
spring
Erklärung
1
prefix = "app.security"
Entspricht Eigenschaften in der Konfigurationsdatei, die mit diesem Präfix beginnen.
2
List<String> allowedOrigins
Verarbeitet automatisch kommagetrennte Werte oder YAML-Listen in eine Java-Liste.
3
Getters and Setters
Werden von Spring benötigt, um Eigenschaften an die Felder der Klasse zu binden.