
Moderne Spring-Backends für Angular
Microservices mit Spring Boot
Flexibele Backends passend zu Ihrer Angular-Lösung
- Dauer: 3 Tage
- Remote: 15.05.2023
- Gruppenrabatt verfügbar
- Individuell vereinbar
- In-House oder remote
- Ab ca. 8 Teilnehmer günstiger
Workshop
In dieser weiterführenden Intensiv-Schulung lernen Sie, wie sich moderne Backends für eine Angular Anwendung entwickeln lassen. Während der Schulung werden Sie neben der Entwicklung des Backends auch die für die Kommunikation mit dem Backend notwendige Logik innerhalb der Angular Anwendung selbst entwickeln.
Auf diese Weise erfahren Sie, wie Sie ihr Backend mit den Methoden des Domain Driven Designs in Microservices zerlegen können. Sie finden heraus, was es bei einer guten Kommunikation via HTTP Protokolls gibt und was es mit REST wirklich auf sich hat.
Aber auch Themen wie Datenzugriff, Authentifizierung und Autorisierung werden während der Schulung näher beleuchtet.
Durch die in der Schulung enthaltenen Übungen entsteht somit ein Backend mit Angular Anwendung, das Sie im Nachhinein als Vorlage für eigene Anwendungen nutzen können.


Highlights
✅ Interaktiv: Stellen Sie Fragen und nehmen Sie an Diskussionen teil
✅ Viele Übungen und Live-Coding
✅ Fallstudie, die Sie als Blaupause für Ihre eigenen Projekte verwenden können
✅ Pair-Programming mit Ihrem Trainer
Ausgewählte zufriedene Kunden
Microservices mit Spring Boot
Anhand einer Fallstudie entwickeln ein Spring Boot Backend für einen Angular Client.
Dabei lernen wir Domain Driven Design als Architekturmuster für Microservices kennen. Unser ziel ist es, bereits am Anfang der Schulung eine funktionsfähige und erweiterbare Anwendung zu entwickeln die wir im weiteren Verlauf der Schulung ausbauen können.
Wir gehen davon aus, dass Sie bereits Erfahrung mit der Sprache Java haben. Falls nicht, können wir eine Java-Einführung in dieses Training integrieren.
Folgende Aspekte werden dabei im Detail beleuchtet:
- Design einer Microservice Architektur mittels Domain Driven Design
- Das HTTP Protokoll und seine Funktionen richtig nutzen
- Design von guten REST Services mittels Spring und Routing
- Beschreiben Ihrer API mit Swagger/ OpenAPI
- Logging, Startup und Konfiguration
Datenzugriff mit Spring Data und JPA/ Hibernate
Nahezu jede Anwendung arbeitet mit Daten und muss diese persistieren. Daher beleuchten wir im nächsten
Schritt die Arbeit mit relationalen Daten.
Wir erweitern unsere Anwendung um eine relationale Datenbank auf die wir mittels Spring Data, JPA/ Hibernate zugreifen. Auch hier kommt wieder ein Schlüsselelement aus dem Domain Driven Design zum Einsatz: Mit Hilfe von Aggregaten erstellen wir einen optimalen Schnitt unseres Domain Models bzw. unseres relationalen Datenbankmodels um die Daten zwischen Frontend und Backend zu übertragen.
Folgende Aspekte werden dabei im Detail beleuchtet:
- Datenbankzugriff mittels Spring Data, JPA/ Hibernate
- Data Transfer Objects und POCOs
- Mappen von Beziehungen
- Change Tracking in verteilten Systemen
Authentifizierung und Autorisierung mit Spring Security
Eine weitere häufige Anforderung an Anwendungen ist die Möglichkeit zu erkennen wer gerade mit der
Anwendung arbeiten und ob dieser mit den angeforderten Daten/Funktionen arbeiten darf.
Daher werden wir unsere Anwendung im nächsten Schritt um Authentifizierung und Autorisierung erweitern. Wir lernen dabei wie eine bestehende Benutzerdatenbank angebunden werden kann aber auch wie wir ein eigenes Benutzerverzeichnis nur für unsere Anwendung erstellen können.
Folgende Aspekte werden dabei im Detail beleuchtet:
- OAuth2 und OpenId Connect als moderne Authentifizierungsprotokolle
- JSON Web Tokens (JWT) als Container für OAuth2 und OpenId Connect Informationen
- Kennenlernen Redhat Keycloak
- Integration eines eigenen Security Token Service
Weiterführende Themen
Die restliche Zeit verbringen wir mit Ihren konkreten Fragen und weiterführenden Themen. Beispiele dafür sind:
- Arbeiten mit binären Daten und Streaming
- Asynchrone Kommunikation via Message Queues
- Nutzung eigener Datenformate jenseits von XML und JSON
- Einbindung Dokument-orientierter Datenbanken wie MongoDB oder ComosDB
- Service Discovery und Load Balancing
- Hosting mit Docker
- Nutzung von OData
Manfred Steyer ist Google Developer Expert (GDE) für Angular sowie Tursted Collaborator im Angular-Team. Zusammen mit seinem Team betreut er Kunden im gesamten deutschen Sprachruam. Der Fokus liegt dabei auf Geschäfts- und Industrie-Anwendungen auf der Basis von Angular.
