Spring Boot 2 (eBook)

Moderne Softwareentwicklung mit Spring 5
eBook Download: PDF
2018 | 1. Auflage
460 Seiten
dpunkt (Verlag)
978-3-96088-388-3 (ISBN)

Lese- und Medienproben

Spring Boot 2 -  Michael Simons
Systemvoraussetzungen
36,90 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
Spring Boot hat seit 2014 das Spring-Ökosystem revolutioniert und verdrängt in zunehmendem Maße 'klassische' Spring-Anwendungen. Spring Boot ist kein neues Framework, sondern basiert auf Spring und dem Spring-Ökosystem. Es vereinfacht die Verwaltung von Abhängigkeiten und die Konfiguration des Spring- Frameworks. Spring Boot löst dabei Probleme, die einer effektiven und effizienten Produktivsetzung im Weg stehen, und bietet vielfältige Möglichkeiten, testgetrieben zu entwickeln. Spring Boot sollte die erste Wahl sein, Springbasierte Anwendungen zu entwickeln, unabhängig davon, ob es sich um Microservices handelt oder nicht. Dieses Buch bietet eine umfassende Einfu?hrung in die von Spring Boot unterstu?tzten Spring-Module und -Technologien: - Webanwendungen - Reaktive Anwendungen - Security - Datenbanktechnologien - Caching - Tests und DokumentationDaru?ber hinaus stellt es verschiedene Möglichkeiten vor, Spring-Boot-Anwendungen zu deployen, sowohl in klassischen als auch in Cloud- Szenarien. Hinweise auf Best Practices sowie eine Übersicht der zahlreichen Änderungen von Spring Boot 1 auf Version 2 runden das Buch ab.

Michael Simons ist zweifacher Vater, Ehemann, Geek und leidenschaftlicher Fahrradfahrer. Er entwickelt seit u?ber 15 Jahren Software im Java-Umfeld, seit sieben Jahren mit Spring. Michael ist Mitglied des NetBeans Dream Team und Gru?nder der Euregio JUG. Er schreibt in seinem Blog info.michael-simons.eu u?ber Java, Spring und Softwarearchitektur. Michael arbeitet als Senior Consultant bei innoQ Deutschland.

Michael Simons ist zweifacher Vater, Ehemann, Geek und leidenschaftlicher Fahrradfahrer. Er entwickelt seit über 15 Jahren Software im Java-Umfeld, seit sieben Jahren mit Spring. Michael ist Mitglied des NetBeans Dream Team und Gründer der Euregio JUG. Er schreibt in seinem Blog info.michael-simons.eu über Java, Spring und Softwarearchitektur. Michael arbeitet als Senior Consultant bei innoQ Deutschland.

Inhaltsverzeichnis 5
Geleitwort 13
Vorwort 15
Wege durch das Buch 21
I Einleitung 27
Hallo, Spring Boot 29
Projektdefinition oder „Project Object Model“ 29
Abhängigkeiten definieren 31
Hallo, Welt! 33
Liefern 36
Fehler erkennen 38
II Spring Boot 41
Projektstruktur 43
Build-Management-Tools 43
Maven 44
Gradle 49
Pakete und Klassen strukturieren 51
Spring Initializr 53
IDE-Unterstützung 55
Spring Tool Suite 55
NetBeans IDE 59
IntelliJ IDEA 62
Die Qual der Wahl 64
Spring-Framework-Grundlagen 65
Dependency Injection 66
Der Spring-Container 66
Inversion of Control 68
Ausblick 72
Aspektorientierte Programmierung 72
Einführung 72
Spring und AOP 73
Konfiguration 77
Externe Konfiguration 77
Konfigurationsdateien 79
Zugriff auf Konfiguration 84
Interne Konfiguration 94
Profile 94
Konfigurationsklassen 96
Automatische Konfiguration 103
Die Magie hinter Spring Boot 107
Grundlagen 108
Namensgebung 109
Factories Loader 109
Konfiguration, nur unter Bedingung 110
Auf Anwesenheit von Klassen hin testen 111
Auf Anwesenheit von Beans hin testen 112
Die Konfiguration auswerten 113
Weitere Bedingungen nutzen 113
Bedingungen logisch verknüpfen 114
Metadaten bereitstellen 115
Ihren Starter deployen 115
Fazit 117
Logging 119
Gemeinsame Konfiguration 120
Erweiterte Konfiguration 122
Logback 123
Log4j 2 124
Java Util Logging (JUL) 126
Zugriffslogs 126
Tomcat 126
Undertow 127
Remote-Konfiguration 128
HTTP-Endpunkt 128
JMX 130
Remote-Logging 130
Beschleunigter Entwicklungsprozess mit den devtools 133
Automatische Neustarts 134
Automatisches Neuladen von Inhalten 137
III Das Spring-Ökosystem 139
Webanwendungen 141
Spring Web MVC 142
Die Grundlagen verstehen 142
Funktionen kennenlernen 144
Spring Web MVC automatisch konfigurieren 151
Eingebetteten Webcontainer nutzen 152
Statische Inhalte ausliefern 157
JSON-Serialisierung und -Deserialisierung steuern 158
Hochgeladene Dateien verarbeiten 162
Zusätzliche Scopes beherrschen 165
Template Engines 168
Thymeleaf-Templates nutzen 170
Groovy-Templates verwenden 174
Ausblick 175
Über WebSockets kommunizieren 176
JAX-RS nutzen 177
Security 179
Minimale Autokonfiguration 180
Die Grundlagen verstehen 180
Authentifizierung 181
Autorisierung 182
Spring Security und Spring Web MVC 183
Methodensicherheit 184
Sicherheit auf HTTP-Header-Ebene 185
Anwendungsbeispiele 187
Die Standardkonfiguration nutzen 187
Methodensicherheit aktivieren 189
Gesicherte URLs und Methoden testen 190
Eine eigene Benutzerverwaltung anbinden 192
Passwörter sicher speichern 193
HTTP-Sicherheit anpassen 196
Form-Login und Webintegration nutzen 198
Spring Data Repositorys absichern 199
OAuth 2 nutzen 200
Ausblick 208
Persistenz 209
Spring Data 209
Relationale Datenbanken 210
Datasources 210
Datenbankinitialisierung und -migration 214
Transaktionen 220
Datenbankzugriff 226
NoSQL-Technologien 239
Spring Data MongoDB 239
Weitere Spring-Data-Module 244
Fazit 246
Caching 247
Aspekte eines Cache 247
Deklaratives Caching 248
Caching aktivieren 249
Caching mit Spring Boot 250
Beispiele und Sonderfälle 251
Cachen von 3rd-Party-Abhängigkeiten 252
Synchrones Caching 253
Caching von Web-Controller-Methoden 254
Messaging 255
Über JMS kommunzieren 258
JMS-Grundlagen kennen 259
Einen JMS-Broker konfigurieren 261
JmsTemplate und Listener verstehen 261
AMQP nutzen 268
Redis als Messaging-System verwenden 270
Apache Kafka anbinden 272
Ausblick: Spring Cloud Stream 273
E-Mail 277
Mit Spring Boot E-Mails verschicken 277
Reaktive Programmierung 279
Reactive Streams und Project Reactor 281
WebFlux-Modul 285
Klassische Annotationen verwenden 287
Datenquellen 289
Funktionales Programmiermodell 294
Reaktive Methoden testen 300
Reaktive Views benutzen 302
Spring Security mit WebFlux verwenden 303
Ausblick: Spring Cloud Function 304
Tests und Dokumentation 307
Spring-Boot-Starter-Test 308
Unit-Tests 309
Integrationstests 314
Grundlage: Das Frameworkmodul „spring-test“ 314
Spring-Boot-Anwendungen testen 319
Automatische Mock-Objekte 325
Explizite Tests technischer Schichten 327
Erweiterte Testkonfiguration 332
Hilfsmittel 338
Fazit 339
Dynamische JVM-Sprachen und polyglotte Programmierung 341
Groovy 342
Das Spring-Boot-Commandline-Interface 344
Kotlin 348
IV Produktivsetzung 351
Actuator 353
Bereitstellen des Spring Boot Actuator 353
Übersicht 354
Security 356
Konfiguration der HTTP-Endpunkte 359
Konfiguration der JMX-Endpunkte 359
Allgemeine Informationen 360
Health-Status 362
Metriken mit Micrometer aufzeichnen 364
Verfügbare Metriken 366
Eigene Metriken erfassen 367
Den Metrics-Endpunkt benutzen 368
Metriken exportieren und auswerten 370
Eigene Endpunkte 371
Verteilung 373
Artefakte 373
Klassische Installation 379
Als Unix/Linux Service 379
Als Windows-Dienst 383
Servlet-Container 388
War-Deployment 388
Klassische Spring-Anwendungen migrieren 391
Verteilung in die Cloud 392
Cloud Foundry 393
Andere Plattformen und Anbieter 399
V Microservices mit Spring Cloud: ein Einstieg 401
Einführung und Übersicht 403
Was ist eine Microservice-Architektur? 403
Was gehört alles zu Spring Cloud? 404
Spring Cloud in Ihr Projekt einbinden 405
Kontexthierarchien 406
Der Bootstrap-Kontext 406
Der Wochenplaner: ein verteiltes Beispiel 408
Konfiguration in verteilter Umgebung 409
Den Konfigurationsserver starten 409
Clients anbinden 411
Service Discovery mit Netflix Eureka 413
Einen Eureka-Server betreiben 413
Services am Eureka-Server anmelden 415
Services aus Eureka benutzen 417
Circuit Breaker 423
Spring Cloud Hystrix nutzen 423
Weitere Aufgaben lösen 429
Lebenszyklus von Spring-Anwendungen und Beans 431
Auf Ereignisse im Lebenszyklus einer Anwendung reagieren 431
Den Lebenszyklus von Beans verstehen 434
Erweiterte Konfiguration von Datasources 437
Upgrade von Spring Boot 1 auf 2 443
Spring 5 443
Neue Voraussetzungen: Spring 5 und Java 8 443
Neue Funktionen und Verbesserungen 444
Änderungen in Spring Boot 2 446
Glossar 451
Abkürzungen 455
Index 457

Erscheint lt. Verlag 17.5.2018
Verlagsort Heidelberg
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Schlagworte Cloud • Cloudfoundry • Cloud Native • Java • jOOQ • Kotlin • Microservices • Programmierung • reactive • Spring • Spring Data • Spring Security • Spring Web MVC • Webflux
ISBN-10 3-96088-388-9 / 3960883889
ISBN-13 978-3-96088-388-3 / 9783960883883
Haben Sie eine Frage zum Produkt?
PDFPDF (Wasserzeichen)
Größe: 8,5 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
37,43
Das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

eBook Download (2023)
Rheinwerk Computing (Verlag)
33,68