Schulung: Spring Boot modernisieren mit Quarkus
Architektur, Migration und Best Practices
- Vergleich Spring Boot und Quarkus
- Standards für serverseitige Software
- Cloud Readiness
- Projektaufbau und Konfiguration
- Basis-Bestandteile: Webservices, Persistenz
- Security
- Messaging
- Testing
- Native Images
In diesem Seminar stellen wir die Gemeinsamkeiten und Unterschiede der beiden populären Server-Frameworks Spring Boot und Quarkus dar.
Für die Migration von Spring-Boot-Anwendungen lernen Sie für gängige Spring-Boot-Features die passenden Quarkus-Alternativen kennen. Neben den Basistechniken für Webservices und Persistenz umfasst dies auch Security, Messaging und Testing.
Sie erfahren, wie Anwendungen containerisiert werden können, z. B. für den Betrieb in Kubernetes. Für besonders platzsparende Deployments erlernen Sie, wie Quarkus-Anwendungen in Maschinencode compiliert und nativ betrieben werden können.
Nach dem Kurs sind Sie in der Lage, fundiert zu entscheiden, wann sich eine Migration einer Spring-Boot-Anwendung lohnt und welche Migrationsstrategie für ihre Anwendungen geeignet ist.
Überblick
- Warum Quarkus?
- Cloud Native
- Container, Kubernetes
- Bestandteile von Server-Anwendungen
- Jakarta EE, MicroProfile
- Monolith, Modulith, Microservice
Quarkus-Projekte
- Bootstrapping mit Maven und Quarkus CLI
- Extensions
- Build Time Processing
- Dev Mode, Dev Services, Dev UI
- Konfiguration
- Logging
- (Continuous) Testing mit JUnit, @QuarkusTest und RestAssured
REST Services
- Spring MVC → Jakarta RESTful Webservices
- Dependency Injection
- Konfiguration
- Exception Handling
Persistenz
- Hibernate ORM
- Hibernate Panache / Hibernate Data
- Spring Data Compatibility
Security
- Spring Security → Quarkus Security
- JWT (JSON Web Token) Handling
- OpenID Connect
Collaboration und Messaging
- REST Client
- Messaging mit Kafka oder AMQP
Testing
- JUnit, @QuarkusTest
- Dev Services (Testcontainer)
- Test Profiles
- Mocking
Native Images
- Build Process mit GraalVM/Mandrel
- Containerisierung
- Limitierungen
Sie entwickeln Spring-Boot-Anwendungen oder leiten Projekte auf Basis von Spring Boot. Und Sie wollen erfahren, welche Vorteile eine Migration zu Quarkus hätte und mit welchem Aufwand Sie rechnen müssen? Dann sollten Sie diesen Kurs besuchen!
Diese Kenntnisse sollten Sie mitbringen:
- Entwicklung serverseitiger Anwendungen mit Java
- Spring Boot
Vorteilhaft – aber nicht notwendig – sind grundlegende Kenntnisse über OCI Container (aka Docker) und Kubernetes.