RSS Frühling
Folgen
API-Versionierung in Spring
Spring Framework 7 führt eine integrierte API-Versioning-Unterstützung ein, die ein häufiges Bedürfnis adressiert, das zuvor eine manuelle Implementierung erforderte. Die Funktion bietet wesentliche Bausteine und konzentriert sich auf die serverseitige und clientseitige Handhabung. Serverseitig verwaltet die `ApiVersionStrategy` die Präferenzen zur Anwendungsversionierung, analysiert und validiert Anfragen. Die Konfiguration erfolgt über MVC- oder WebFlux-Konfigurationen, wobei Eigenschaften für Spring Boot-Anwendungen verwendet werden. Controller verwenden das Attribut `version` in `@RequestMapping` und verwandten Annotationen, während funktionale Endpunkte das Request-Prädikat `version` verwenden. Clientseitig fügt der `ApiVersionInserter` die API-Version zu Anfragen hinzu und ermöglicht so eine einfache Versionsspezifikation. Die Testmöglichkeiten werden durch die Unterstützung in `RestTestClient`, `WebTestClient` und `MockMvc` erweitert. Veraltungshinweise können über einen Veraltungshandler konfiguriert werden. Das Framework beinhaltet Unterstützung für semantische Versionierung und Basisversionen, was die Flexibilität erhöht. Für weitere Details stehen die offizielle Dokumentation und ein Beispielprojekt zum Experimentieren zur Verfügung.