Java

Java ist die Mainstream Programmiersprache im Bereich der objektorientierten Anwendungsentwicklung. Ihr Einsatzbereich reicht von embedded Devices mit der Java ME (Micro Edition) über die Java SE (Standard Edition) für den Desktop bis hin zur Java Enterprise Edition (Java EE) für Unternehmensanwendungen. Die weite Verbreitung auf einer Vielzahl von Plattformen und die sehr reichhaltige Standard API machen das Erlernen von Java zu einer guten Investition.

Auf diesen Seiten will ich versuchen, einige Features der Sprache und vor allem das Standard API praxisorientiert in loser Folge vorzustellen. Aufbau und Inhalt orientieren sich an meiner seit Jahren erfolgreichen C++ Website. Zum Thema Java Enterprise Edition gibt es schon seit längerem eine spezielle Seite mit dem Schwerpunkt Enterprise JavaBeans.

Tutorials

Die ersten Schritte zur Java Programmierung stellt die notwendigen Werkzeuge für den Einstieg in die Java Programmierung vor.

Das Tutorial Objektorientiertes Programmieren in Java führt in das Konzept der Objektorientierung am Beispiel von Java ein.

Netzwerk

Netzwerkclients in Java: Mit der Programmiersprache Java und ihrer reichhaltigen Standard-API ist der Zugriff auf Ressourcen im Netzwerk sehr einfach und flexibel möglich - kein Wunder, hat doch Java-Erfinder Sun Microsystems bereits in den Neunzigerjahren das visionäre Motto «Das Netzwerk ist der Computer» herausgegeben. Dieser Artikel stellt verschiedene Methoden der Netzwerkprogrammierung vor - angefangen von URL bis hin zu Sockets.

UDP und Multicast mit Java Sockets: Der vorhergehende Artikel Netzwerkclients in Java demonstriert, wie einfach die Verwendung von Internetressourcen in einem Java Programm ist. Nun soll ein ambitionierteres Projekt in Angriff genommen werden: Die Implementierung des Simple Service Discovery Protocol (SSDP), welches Bestandteil von Universal Plug and Play (UPnP) ist.

Java und JSON

JAXB und Jackson: Speichern von Java Objekten als JSON: Der Jackson JSON Processor und die Java Architecture for XML Binding (JAXB) bieten ein einfach anzuwendendes Werkzeug zur Serialisierung und Deserialisierung von Java Objekten nach und von JSON. Die Abbildung von Java Objekten auf JSON Daten erfolgt dabei mittels der bekannten JAXB Annotationen.

Java und XML

XML Stream Reader: Eine einfache und performante Methode zum Parsen eines XML Streams mittels Java ist der XML Stream Reader. Der Artikel zeigt eine beispielhafte Implementierung zum Lesen und Auswerten eines Atom Feeds.

SAX Parser: SAX (Simple API for XML) stellt Methoden zum schnellen Parsen von XML bereit. Der Artikel zeigt eine Anwendung von SAX zur Auswertung von Daten des OpenStreetMap Projektes.

DOM API: Das Document Object Model (DOM) dient zur Abbildung kompletter XML Dokumente als Baum von Java Objekten. Damit lässt sich ein dynamisches und programmgesteuertes Erstellen und Modifizieren von XML Daten im Speicher der Java Virtual Machine realisieren. Das Umwandeln von XML Dateien in DOM und zurück erfolgt mit den Komponenten Parser und Transformer aus der JAXP API.

XML Stream Writer und Namespaces: Die Java Streaming API für XML (StAX) eignet sich nicht nur zum Parsen, sondern auch zum Schreiben von XML Dokumenten. So lässt sich zum Beispiel ganz einfach ein Atom Feed mit den wichtigsten News zur eigenen Website erstellen.

Die XPath API: Mittels XPath Ausdrücken lassen sich auf elegante Art und Weise gezielt Informationen aus XML Dokumenten extrahieren. Um XPath in einem Java Programm zu verwenden, sind nur wenige Zutaten erforderlich.

Kein Parser! Direktes Bearbeiten von XML Daten in Java mit JAXB: Die Java Architecture for XML Binding (JAXB) erlaubt die direkte Verarbeitung von XML Daten in einem Java Programm. Der Programmierer muss sich dabei nicht mit XML-Spezifika wie Parser, Transformer oder dem Document Object Model (DOM) auseinandersetzen. Vielmehr stellt JAXB dem Java Programmierer seine gewohnte Sicht auf Klassen und Objekte bereit - die Verarbeitung des XML Datenstroms erfolgt komplett undercover.

JAXB: Speichern von Java Objekten als XML: Mittels der Java Architecture for XML Binding (JAXB) ist die Erzeugung von XML Daten aus Java Objekten auf einfache Art und Weise möglich. Die Abbildung aus der Java- in die XML-Domäne wird dabei über einige wenige Annotationen im Quelltext gesteuert; Konfigurationsdateien oder Vorverarbeitungsschritte sind nicht notwendig.

Java User Group Darmstadt

Die Java User Group Darmstadt ist eine offene und freie Community der Java Anwender in Darmstadt und Umgebung. Unter dem Dach der Hochschule Darmstadt finden regelmäßig interessante Vorträge statt, zum Beispiel zu den Themen Android, NoSQL–Datenbanken, Augmented Reality, Java EE 6, Cloud Computing und Software Testing .