Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Cover
Titel
Impressum
Inhalt
Vorwort
1 Spring Boot in a Nutshell
Die drei Grundeigenschaften von Spring Boot
Starter für vereinfachtes Abhängigkeitsmanagement
Ausführbare JARs für ein vereinfachtes Deployment
Autokonfiguration
Zusammenfassung
2 Ihre Werkzeuge auswählen und beginnen
Maven oder Gradle?
Apache Maven
Gradle
Die Wahl zwischen Maven und Gradle
Java oder Kotlin?
Java
Kotlin
Zwischen Java und Kotlin wählen
Eine Version von Spring Boot wählen
Der Spring Initializr
Rauf auf die Kommandozeile
In Integrated Development Environments (IDEs) bleiben
Unterwegs in main()
Zusammenfassung
3 Ihr erstes Spring-Boot-REST-API erstellen
Das Wie und Warum von APIs
Was ist REST, und warum ist das wichtig?
Ihr API im HTTP-Verbstil
Zurück zum Initializr
Erzeugen einer einfachen Domain
GET-ting
@RestController in a Nutshell
POST-ing
PUT-ting
DELETE-ing
Und mehr
Vertrauen ist gut, Kontrolle ist besser
Zusammenfassung
4 Datenbankzugriff für Ihre Spring-Boot-Anwendung
Die Autokonfiguration für den Datenbankzugriff vorbereiten
Was wollen wir erreichen?
Hinzufügen einer Datenbankabhängigkeit
Code hinzufügen
Speichern und Abrufen von Daten
Ein bisschen Nachpolieren
Zusammenfassung
5 Konfigurieren und Untersuchen Ihrer Spring-Boot-Anwendung
Anwendungskonfiguration
@Value
@ConfigurationProperties
Potenzielle Drittanbieter-Option
Autoconfiguration Report
Der Actuator
Den Actuator dazu bringen, mehr zu verraten
Umweltbewusster werden mit dem Actuator
Mehr protokollieren mit dem Actuator
Zusammenfassung
6 Tief in das Thema Daten einsteigen
Entitäten definieren
Template-Unterstützung
Repository-Unterstützung
@Before
Einen Template-basierten Dienst mit Redis erstellen
Das Projekt initialisieren
Den Redis-Dienst entwickeln
Von Template auf Repository umsteigen
Mit dem Java Persistence API (JPA) einen Repository-basierten Dienst erstellen
Das Projekt initialisieren
Den JPA-(MySQL-)Dienst entwickeln
Daten laden
Mithilfe einer dokumentenorientierten NoSQL-Datenbank einen Repository-basierten Dienst erstellen
Das Projekt initialisieren
Den MongoDB-Dienst entwickeln
Einen Repository-basierten Dienst mithilfe einer NoSQL-Graphdatenbank erstellen
Das Projekt initialisieren
Den Neo4j-Dienst entwickeln
Zusammenfassung
7 Anwendungen mittels Spring MVC erstellen
Spring MVC: Was bedeutet das?
Endanwender-Interaktionen mittels Template-Engines
Das Projekt initialisieren
Die Aircraft-Positions-Anwendung entwickeln
Nachrichten übergeben
Den PlaneFinder ausbauen
Die Anwendung Aircraft Positions erweitern
Konversationen mit WebSocket erzeugen
Was ist WebSocket?
Die Aircraft-Positions-Anwendung umbauen
Zusammenfassung
8 Reaktive Programmierung mit Project Reactor und Spring WebFlux
Einführung in die reaktive Programmierung
Project Reactor
Tomcat versus Netty
Reaktiver Datenzugriff
R2DBC mit H2
Reaktives Thymeleaf
RSocket für eine vollständig reaktive Interprozess-Kommunikation
Was ist RSocket?
RSocket einsetzen
Zusammenfassung
9 Spring-Boot-Anwendungen zur erhöhten Produktionsbereitschaft testen
Unit-Tests
@SpringBootTest vorgestellt
Wichtige Unit-Tests für die Aircraft-Positions-Anwendung
Refaktorieren für ein besseres Testen
Slices testen
Zusammenfassung
10 Ihre Spring-Boot-Anwendung sichern
Authentifizierung und Autorisierung
Authentifizierung
Autorisierung
Spring Security in aller Kürze
Die HTTP Firewall
Sicherheitsfilterketten
Request- und Response-Header
Implementieren einer formularbasierten Authentifizierung und Autorisierung mit Spring Security
Spring-Security-Abhängigkeiten hinzufügen
Authentifizierung hinzufügen
Autorisierung
Implementieren von OpenID Connect und OAuth2 zur Authentifizierung und Autorisierung
Die Client-Anwendung Aircraft Positions
PlaneFinder-Ressourcenserver
Zusammenfassung
11 Das Deployment Ihrer Spring-Boot-Anwendung
Wieder zurück zum ausführbaren Spring-Boot-JAR
Ein »vollständig ausführbares« Spring-Boot-JAR bauen
Was bedeutet das?
JARs auspacken
Deployment von Spring-Boot-Anwendungen in Containern
Ein Container-Image aus der IDE heraus erzeugen
Ein Container-Image von der Kommandozeile aus erzeugen
Verifizieren, dass das Image existiert
Die Container-Anwendung ausführen
Hilfsmittel zum Untersuchen der Container-Images einer Spring-Boot-Anwendung
pack
dive
Zusammenfassung
12 In die reaktive Programmierung intensiv eintauchen
Wann sollte man reaktiv arbeiten?
Reaktive Anwendungen testen
Zuerst aber: refaktorieren
Und nun das Testen
Diagnostizieren und Debuggen reaktiver Anwendungen
Hooks.onOperatorDebug()
Checkpoints
ReactorDebugAgent.init()
Zusammenfassung
Index
Über den Autor
← Prev
Back
Next →
← Prev
Back
Next →