
Der Java-Profi: Persistenzlösungen und REST-Services
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Person
Content
- Cover
- Titel
- Impressum
- Inhaltsverzeichnis
- Vorwort
- Kapitel 1: Einstieg in XML und JSON
- 1.1 Basiswissen XML
- 1.1.1 Bestandteile und Aufbau eines XML-Dokuments
- 1.1.2 Validierung eines XML-Dokuments
- 1.2 XML-Verarbeitung mit JAXP
- 1.2.1 Einfaches Parsing mit SAX
- 1.2.2 Komplexere Parsing-Aufgaben mit SAX
- 1.2.3 Parsing mit DOM
- 1.2.4 Verarbeiten und Speichern mit DOM
- 1.2.5 StAX als Alternative zu SAX oder DOM?
- 1.2.6 SAX, StAX oder DOM?
- 1.2.7 XPath im Überblick
- 1.2.8 XSLT im Überblick
- 1.2.9 XMLEncoder und XMLDecoder im Überblick
- 1.3 XML-Verarbeitung mit JAXB
- 1.3.1 Schritt 1: Passende Java-Klassen erstellen
- 1.3.2 Schritt 2: Marshalling und Unmarshalling
- 1.3.3 JAXB: Stärken und Schwächen
- 1.4 JAXB und StAX in Kombination
- 1.4.1 Rekonstruktion von Objekten mit JAXB und StAX
- 1.4.2 Vergleich zu SAX, DOM und JAXB
- 1.4.3 On-the-Fly-Modifikation von Objekten
- 1.5 JSON - das bessere XML?
- 1.5.1 Crashkurs JSON
- 1.5.2 JSON mit Java verarbeiten
- 1.5.3 JSON vs. XML
- 1.6 Weiterführende Literatur
- Kapitel 2: Einführung in Persistenz und relationale Datenbanken
- 2.1 Grundlagen zur Persistenz
- 2.1.1 Beschränkungen einfacher Persistenzlösungen
- 2.1.2 Modelle zur Persistierung von Objekten
- 2.1.3 Speicherung von Daten in relationalen Datenbanken
- 2.2 Abbildung zwischen Objekt- und Datenbankmodell
- 2.2.1 Abbildung von Referenzen
- 2.2.2 Abbildung von Assoziationen und Aggregationen
- 2.2.3 Abbildung von Vererbung
- 2.3 Das Datenbanksystem HSQLDB im Kurzüberblick
- 2.4 SQL-Grundlagen
- 2.4.1 DDL - Definition von Tabellen
- 2.4.2 DQL - Datenabfrage
- 2.4.3 DML - Datenmanipulation
- 2.5 Ausfallsicherheit und Replikation
- 2.6 Weiterführende Literatur
- Kapitel 3: Persistenz mit JDBC
- 3.1 Datenbankzugriffe per JDBC
- 3.1.1 Schritte zur Abfrage von Datenbanken
- 3.1.2 Besonderheiten von ResultSet
- 3.1.3 Abfrage von Metadaten
- 3.1.4 Probleme bei der Ausführung von Statements
- 3.1.5 Das Interface PreparedStatement
- 3.1.6 Transaktionen in JDBC
- 3.2 Grundlagen zum ORM mit JDBC
- 3.2.1 Rekonstruktion von Objekten
- 3.2.2 Zugriffe mit einem Data Access Object (DAO)
- 3.3 Weiterführende Literatur
- Kapitel 4: Persistenz mit JPA
- 4.1 Grundlagen zum ORM und zum JPA
- 4.2 Einführung in JPA an einem Beispiel
- 4.2.1 Definition persistenter Klassen
- 4.2.2 Die Konfigurationsdatei persistence.xml
- 4.2.3 Datenbankzugriffe per JPA in Java SE
- 4.2.4 Lebenszyklus von Entitäten (Entity Lifecycle)
- 4.2.5 Datenbankmodell
- 4.2.6 Vorteile der konfigurativen Persistenz
- 4.3 JPQL im Überblick
- 4.3.1 Syntax von JPQL
- 4.3.2 Besondere Arten von Queries
- 4.3.3 Abfragen mit JPQL ausführen
- 4.3.4 Typsichere Abfragen und das Criteria API
- 4.4 DAO-Funktionalität mit JPA
- 4.4.1 CRUD-Funktionalität
- 4.4.2 Einsatz des DAO
- 4.5 Fortgeschritteneres ORM mit JPA
- 4.5.1 Abbildung von Assoziationen
- 4.5.2 Abbildung von Vererbungshierarchien
- 4.5.3 Verarbeitung der Typen aus JSR-310: Date and Time
- 4.5.4 Bean Validation im Einsatz
- 4.6 Transaktionen und Locking
- 4.6.1 Isolationslevel und Effekte
- 4.6.2 Problemkontext
- 4.6.3 Optimistic Locking
- 4.7 Caching in JPA
- 4.8 Fazit
- 4.9 Weiterführende Literatur
- Kapitel 5: NoSQL-Datenbanken am Beispiel von MongoDB
- 5.1 Einführung und Überblick
- 5.2 Einführung MongoDB
- 5.2.1 Analogie von CRUD (RDBMS) zu IFUR (MongoDB)
- 5.2.2 Komplexere Abfragen
- 5.2.3 MongoDB und Transaktionen
- 5.3 Ausfallsicherheit und Skalierbarkeit
- 5.3.1 Hintergrundwissen: Formen der Skalierung
- 5.3.2 Ausfallsicherheit und Replica Sets
- 5.3.3 Skalierung und Sharding
- 5.3.4 Anmerkungen zu Replica Sets und Sharding
- 5.4 MongoDB aus Java ansprechen
- 5.4.1 Einführendes Beispiel
- 5.4.2 Daten einfügen und auslesen
- 5.4.3 Verarbeitung komplexerer Daten
- 5.4.4 Einfaches JSON-basiertes Object/Document Mapping
- 5.4.5 Object/Document Mapping mit Spring Data MongoDB
- 5.5 Fazit
- 5.6 Weiterführende Literatur
- Kapitel 6: REST-Services mit JAX-RS und Jersey
- 6.1 REST im Kurzüberblick
- 6.1.1 Einführendes Beispiel eines REST-Service
- 6.1.2 Zugriffe auf REST-Services
- 6.1.3 Unterstützung verschiedener Formate
- 6.1.4 Zugriffe auf REST-Services am Beispiel von MongoDB
- 6.2 Ein REST-Service mit CRUD-Funktionalität
- 6.2.1 MIME-Types und unterschiedliche Datenformate
- 6.2.2 HTTP-Kommandos und CRUD-Funktionalität
- 6.3 Tipps zum Design von REST-Interfaces
- 6.3.1 Varianten der Rückgabe und Error Handling bei REST
- 6.3.2 Wertübergabe als @QueryParam oder @PathParam
- 6.3.3 Paging bei GET
- 6.4 Fortgeschrittene Themen
- 6.4.1 Einsatz von Request- und Response-Filtern
- 6.4.2 Security im Kontext von REST
- 6.4.3 Testen mit restfuse
- 6.5 Fazit
- 6.6 Weiterführende Literatur
- Kapitel 7: Entwurf einer Beispielapplikation
- 7.1 Iteration 0: Ausgangsbasis
- 7.2 Iteration 1: Zentrale Verwaltung von Highscores
- 7.3 Iteration 2: Verwaltung von XML
- 7.4 Iteration 3: Bereitstellen als REST-Service
- 7.5 Iteration 4: Web-GUI mit HTML und JavaScript
- 7.6 Iteration 5: Protokollierung von Aktionen mit MongoDB
- 7.7 Fazit zum Abschluss der Iterationen
- Anhang
- A Einführung Gradle
- A.1 Projektstruktur für Maven und Gradle
- A.2 Builds mit Gradle
- B Client-Server-Kommunikation und HTTP im Überblick
- B.1 Client-Server-Kommunikation
- B.2 Basiswissen HTTP
- C Grundlagenwissen HTML
- C.1 Basiswissen HTML
- C.1.1 HTML am Beispiel
- C.1.2 Interaktivität und Formulare
- D Wissenswertes zu JavaScript
- D.1 Grundlagen zur Sprache
- D.2 Modifikation von HTML
- D.3 JSON-Verarbeitung
- D.4 REST-Services ansprechen
- Literaturverzeichnis
- Index
- Fußnoten
- Kapitel 1: Einstieg in XML und JSON
- Kapitel 2: Einführung in Persistenz und relationale Datenbanken
- Kapitel 3: Persistenz mit JDBC
- Kapitel 4: Persistenz mit JPA
- Kapitel 5: NoSQL-Datenbanken am Beispiel von MongoDB
- Kapitel 6: REST-Services mit JAX-RS und Jersey
- A Einführung Gradle
- B Client-Server-Kommunikation und HTTP im Überblick
- D Wissenswertes zu JavaScript
- Rezensieren & gewinnen!
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.