Skip to main content
Top

2019 | Book

Masterkurs Client/Server-Programmierung mit Java

Anwendungen entwickeln mit Standard-Technologien

insite
SEARCH

About this book

Dieses Buch stellt die Client- und Server-Programmierung auf Basis von Java vor

Lernen Sie, wie Sie moderne Client- und Server-Anwendungen mit aktuellen Standard-Technologien auf Basis der aktuellen Java-Version entwickeln. Dieses praxisbezogene Buch über die Client- und Server-Programmierung eignet sich ideal für die eigenständige Erarbeitung der folgenden Themen:

· Netzwerkprogrammierung mit TCP/IP

· HTTP

· Push-Verfahren

· REST-basierte Web Services

Es hält eine Vielzahl an hilfreichen Anwendungs- und Programmbeispielen sowie praktische Übungen bereit und hilft Ihnen, Server in der Praxis selbst zu programmieren. Alle Beispielprojekte und Lösungen zu den Übungen stehen als Download zur Verfügung.

Mit diesen Inhalten beschäftigt sich der Autor eingehendAls Professor für Wirtschaftsinformatik ist der Autor des Buches ein wahrer IT-Spezialist im Bereich Client- und Server-Programmierung. Er beschäftigt sich in seinem Werk unter anderem mit den folgenden Thematiken:

· Datenaustausch mit JSON

· Kommunikation mit UDP

· Netzwerkprogrammierung mit TCP-Sockets

· Nachrichtentransfer mit JMS

· Remote Method Invocation (RMI)

· Kommunikation über http

· Bidirektionale Verbindung mit WebSocket

· SOAP-basierte Web Services mit JAX-WS

· REST-basierte Web Services mit JAX-RS

Alle diese Themenbereiche stellt Abts kompakt und praxisnah dar und richtet sich damit an Studierende der Informatik und Wirtschaftsinformatik, IT-Beschäftigte in Ausbildung und Beruf sowie an Java-Programmierer in der Praxis.

Table of Contents

Frontmatter
Kapitel 1. Einleitung
Zusammenfassung
In diesem Kapitel erfahren Sie zunächst, was Sie von diesem Buch erwarten können, welche Themen behandelt werden und wie es aufgebaut ist. Es folgen Hinweise zu vorausgesetzten Kenntnissen, zur verwendeten Entwicklungsumgebung und zu den zur Verfügung gestellten Quellcodes und Tools.
Dietmar Abts
Kapitel 2. Datenaustausch mit JSON
Zusammenfassung
JSON (JavaScript Object Notation) ist ein platzsparendes Datenaustauschformat, das für Menschen einfach zu lesen und zu schreiben ist. Für alle gängigen Programmiersprachen gibt es Tools, um Datenstrukturen im JSON-Format zu analysieren und zu generieren. JSON-Dokumente können direkt von JavaScript interpretiert werden.
Dietmar Abts
Kapitel 3. Kommunikation mit UDP
Zusammenfassung
Das User Datagram Protocol (UDP) stellt grundlegende Funktionen zur Verfügung, um mit geringem Aufwand Daten zwischen kommunizierenden Prozessen austauschen zu können. UDP ist als Transportprotokoll der dritten Schicht im TCP/IP-Schichtenmodell zugeordnet und nutzt den Vermittlungsdienst IP.
Dietmar Abts
Kapitel 4. Netzwerkprogrammierung mit TCP-Sockets
Zusammenfassung
Das wichtigste Protokoll der Transportschicht im TCP/IP-Schichtenmodell ist das Transmission Control Protocol (TCP). Es ist aufwändiger als UDP, stellt aber dafür eine verlässliche Verbindung zwischen Client und Server her. Viele bekannte Internet-Dienste wie FTP (File Transfer Protocol), Telnet, SMTP (Simple Mail Transfer Protocol), POP (Post Office Protocol) und HTTP (Hypertext Transfer Protocol) nutzen TCP.
Dietmar Abts
Kapitel 5. Nachrichtentransfer mit JMS
Zusammenfassung
Die Kommunikation zwischen Client und Server in den vorangegangenen Kapiteln ist dadurch gekennzeichnet, dass die Teilnehmer direkt und zeitgleich miteinander in Verbindung treten. In der Regel ist der Client solange blockiert, bis der Server die Verarbeitung abgeschlossen und die Antwort zurückgesendet hat (synchrone Kommunikation). Die Kommunikation auf der Basis von nachrichtenorientierter Middleware (Message Oriented Middleware, MOM) macht sich von dieser engen Kopplung frei. Der Austausch von Nachrichten erfolgt asynchron mit Hilfe eines Vermittlers (Message Broker, MOM-Server), der Warteschlangen verwaltet. Die Nachricht des Senders wird vom Vermittler in die Warteschlange des Empfängers gelegt. Der Empfänger kann diese Nachricht zu einem späteren Zeitpunkt aus der Warteschlange holen. Sender und Empfänger agieren unabhängig voneinander und sind also über den Vermittler nur lose gekoppelt.
Dietmar Abts
Kapitel 6. Remote Method Invocation
Zusammenfassung
In diesem Kapitel stellen wir ein System vor, das die Kommunikation zwischen Objekten, die sich auf verschiedenen Rechnern (JVMs) befinden, ermöglicht. Neben (fast) beliebigen Objekten kann auch das Verhalten (Bytecode) übertragen werden, so dass flexible Anwendungen realisiert werden können. Allerdings muss sowohl der Client als auch der Server in Java programmiert sein.
Dietmar Abts
Kapitel 7. Kommunikation über HTTP
Zusammenfassung
Ziel dieses Kapitels ist es, eine Einführung in das Hypertext Transfer Protocol (HTTP) zu geben und einen einfachen Webserver zu entwickeln.
Dietmar Abts
Kapitel 8. Bidirektionale Verbindung mit WebSocket
Zusammenfassung
Bei einer HTTP-Verbindung wird jede HTTP-Anfrage mit einer HTTP-Antwort abgeschlossen (siehe Kapitel 7). Anfrage und Antwort bestehen jeweils aus Header-Informationen und Nutzdaten. Jede vom Server an den Client gesendete Nachricht erfordert also eine vorhergehende Anfrage des Clients. Die Kommunikation wird also stets vom Client initiiert.
Dietmar Abts
Kapitel 9. SOAP-basierte Web Services mit JAX-WS
Zusammenfassung
Verfahren für den Zugriff auf entfernte Dienste gibt es schon lange: DCOM (Distributed Component Object Model) für Windows-Systeme, CORBA (Common Objekt Request Broker Architecture) für nahezu alle Plattformen und RMI (Remote Method Invocation) für Java-Anwendungen. Allerdings sind die Formate der zu übertragenden Daten nur innerhalb eines Modells standardisiert.
Dietmar Abts
Kapitel 10. REST-basierte Web Services mit JAX-RS
Zusammenfassung
SOAP-basierte Web Services und die im Umfeld vorhandenen Standards sind gut geeignet, die Implementierung von SOA zu ermöglichen.
Dietmar Abts
Backmatter
Metadata
Title
Masterkurs Client/Server-Programmierung mit Java
Author
Prof. Dr. Dietmar Abts
Copyright Year
2019
Electronic ISBN
978-3-658-25925-9
Print ISBN
978-3-658-25924-2
DOI
https://doi.org/10.1007/978-3-658-25925-9

Premium Partner