În timp ce adnotarea @Value("${prop}") este potrivită pentru constante simple, proiectele enterprise utilizează @ConfigurationProperties pentru gruparea ierarhică, validarea și maparea puternic tipizată a fișierelor de configurare.
Această abordare aduce auto-completare în IDE, validare automată prin constrângeri Jakarta Validation (@Validated, @NotNull, @Min) și suport complet pentru Java Records imutabile începând cu Spring Boot 3.
Exemplu: Mapare type-safe cu Java Record și validare
package ro.dexblog.demo.config;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Positive;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.validation.annotation.Validated;
// Fișier application.yml:
// app:
// payment:
// api-key: "sk_live_xyz987"
// timeout-ms: 5000
// endpoint-url: "https://api.stripe.com/v1"
@Validated
@ConfigurationProperties(prefix = "app.payment")
public record PaymentProperties(
@NotBlank String apiKey,
@Positive int timeoutMs,
@NotBlank String endpointUrl
) {}
Întrebări & Exemple de Cod:
@ConfigurationProperties în Spring BootAi o nelămurire despre utilizarea comenzii
@ConfigurationProperties în Spring Bootsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.