Java 2 SDK v 1.4.0

Fortgeschrittene Programmierung

 
non scholae sed vitae discimus

 

 Kursinhalte

Spezielle Streams und Serialisierung

  • ObjectStreams
  • Probleme der Serialisierung
  • ZipStreams
  • Weitere Streams

Multithreading

  • Die Klasse Thread
  • Das Interface Runnable
  • Prioritäten und Gruppen von Threads
  • Synchronisation
  • Monitore
  • Deadlocks
  • Datenaustausch zwischen Threads

Netzwerkzugriffe

  • Netzwerke und Protokolle
  • Adressierung
  • Klassen für die Speicherung von Internetadressen
  • Internetadressen
  • Die Klassen URI und URL
  • Socket-Programmierung
  • Client-Sockets
  • Server-Socket
  • Chat-Verbindung
  • Anwendungsbeispiel: Mail versenden
  • Mail über eine Socket-Verbindung senden
  • Mail über eine URL-Verbindung senden
  • Das JavaMail API

New I/O APIs

  • Puffermanagement
  • Puffer
  • ByteBuffer und Memory Mapped IO
  • Character-Set-Codierung
  • Channels (Kanäle) und Selectors

Reguläre Ausdrücke

  • Mustererkennung mit regulären Ausdrücken
  • Optionen für reguläre Ausdrücke
  • Zeichenklassen verwenden
  • Wiederholungen angeben
  • Verankerung von Mustern
  • Alternativen angeben
  • Splitten von Zeichenfolgen
  • Gruppieren mit Klammern
  • Regeln für die Verwendung regulärer Ausdrücke
  • Ersetzen von Textteilen mit regulären Ausdrücken
  • Substitution verwenden
  • Stückweises Ersetzen
  • Zeichen in die Zeichenfolge einfügen
  • Zurücksetzen des Matcher-Objekts

Reflection

  • Die Klasse Object
  • Die Klasse Class
  • Das Package java.lang.reflect
  • Methoden einer Klasse ermitteln und aufrufen
  • Konstruktoren einer Klasse ermitteln
  • Felder einer Klasse ermitteln und auslesen
  • Exceptions einsetzen
  • Dynamisches Laden von Klassen über Interfaces
  • Beispiel für die Anwendung des Reflection-APIs

Logging

  • Prinzip
  • Einstellungen für das Logging
  • Level
  • Logger
  • Handler
  • Formatter
  • Die Properties-Datei
  • Standardeigenschaften ändern
  • Logging-Konfiguration im Quellcode
  • Logging-Konfiguration über eine eigene Properties-Datei

Preferences (Voreinstellungen)

  • Voreinstellungen
  • Hierarchische Struktur der Preferences
  • Auf Änderungen der Preferences reagieren
  • Preferences exportieren und importieren

Sicherheit

  • Sicherheit von Java-Programmen
  • Klassenlader
  • Sicherheitsmanager (SecurityManager)
  • Policy-Dateien (Richtliniendateien)
  • Verschlüsselung
  • Fingerabdruck (Message-Digest)
  • Digitale Signaturen
  • Authentifizierung mit Zertifikaten

JNI - Java Native Interface

  • Aufruf nativer Funktionen
  • Erstellen des Java-Programms
  • Erstellen der Header-Datei
  • Entwicklung der nativen Programmbibliothek
  • Test der nativen Bibliothek
  • Datentypen und Zugriff auf Strings
  • Lokale und globale Referenzen
  • Zugriff auf Methoden und Felder der JVM
  • Fehlerbehandlung
  • Invocation-API

Remote Method Invocation

  • Die RMI-Architektur
  • Besonderheiten des verteilten Objektmodells von Java
  • Parameterübergabe bei entfernten Methoden
  • Anwendungsfälle für RMI
  • Entwicklung einer RMI-Anwendung
  • Definition des Interfaces für das Remote-Objekt
  • Entwicklung der Klasse für das Remote-Objekt
  • Erzeugen des Stubs und des Skeletons durch den RMI-Compiler
  • RMI-Registrierung starten
  • Registrierung des Remote-Objekts
  • Remote-Objekt durch Client-Anwendung aufrufen
  • Factory-Klassen
  • Dynamisches Laden von Klassen
  • Security-Manager installieren
  • Policy-Dateien
  • Dynamisches Laden anhand eines Beispiels
  • Remote Object Activation
  • Entwicklung des Remote-Objekts
  • Aufruf des Aktivierungsdienstes
  • Registrierung des Remote-Objekts
  • Remote-Objekt durch Client-Anwendung aufrufen

JDBC - Java Database Connectivity

  • Beispieldatenbank installieren
  • InterBase/FireBird als SQL Client/Server-System
  • Download und Installation des InterBase-Servers
  • Start, Test und Beenden des InterBase-Servers
  • Installation und Test des InterClients
  • Aufbau der verwendeten Tabellen
  • Aufbau einer Datenbankverbindung
  • Laden des Treibers
  • Verbindung zur Datenbank herstellen
  • SQL-Anweisungen ausführen
  • Einfache SQL-Anweisungen
  • Vorbereitete SQL-Anweisungen
  • Callable Statements und Stored Procedures
  • Auswerten der Ergebnismengen
  • Konfigurieren der Ergebnismenge
  • Navigieren in der Ergebnismenge
  • Werte der Ergebnismenge ermitteln
  • Update der Ergebnismenge
  • Nullwerte
  • Auslesen von Metadaten
  • Datenbankinformationen ermitteln
  • Informationen über eine Ergebnismenge
  • Transaktionen
  • Datenbankzugriff über Applets
  • Debuggen von JDBC-Anwendungen