Java für Fortgeschrittene
Empfohlene Schulungsdauer: 5 Tage, insgesamt 40 Unterrichtsstunden à 45 Minuten
Kursziele
Der fortgeschrittene Java-Kurs vertieft die Kenntnisse des Einführungskurses, sodass Teilnehmer komplexe Java-Anwendungen mit der Java Standard Edition (Java SE) umsetzen können. Mit den leistungsfähigen Bibliotheken aus Java 6 lernen sie nebenläufigeProgramme zu entwickeln, leistungsfähige Datenstrukturen zu verwenden, Ein-/Ausgabe zu realisieren und ansprechende internationalisierte, grafische Oberflächen mit Swing aufzubauen. Ein weiterer Teil des Kurses führt in die Enterprise-Technologien ein, um relationale Datenbanken anzusprechen, über RMI entfernte Dienste zu nutzen und dynamische Webseiten zu generieren. Mit einer Übersicht über Open-Source-Werkzeuge schließt das Seminar die Grundlagenausbildung in Java ab und Teilnehmer können in einzelnen Technologien (wie Datenbankzugriffe, EJB, Spring, …) weiter vertiefen.
Zielgruppe
Software-EntwicklerKursvoraussetzungen
Der Kurs ›Java Grundlagen‹ oder vergleichbare Kenntnisse.Seminarinhalte
![[LOGO]](../../images/seminare/logos/java12.png)
Generics
- Einsatzgebiete von Generics
- Typparameter, generische Klassen und generische Methoden
- Wildcards
- Bounds
- Generics und Vererbung, Vergleich zu Arrays, Kovarianz, Invarianz
- Raw Types, Typlöschung
- Generics im Laufzeitsystem, Reflection-API, Run-time Type Tokens
Internationalisierung und Lokalisierung
-Locale, korrekte Sortierung
- Internationalisierung mitResourceBundle
- Formatieren von Zeichenketten, Datum, Zahlen
Dynamische Datenstrukturen
-Arrays-Methoden
- Listen (ArrayList,LinkedList)
- Mengen (HashSet,TreeSet)
- Assoziativspeicher ((Weak)HashMap,Properties)
- Queues, blockierende Queues
- Die Utility-KlasseCollections
- Sonstige Klassen imjava.util-Paket
- Strong References und Weak References
Paralleles Programmieren mit Threads
- Die KlasseThreadund das InterfaceRunnable
- Das Concurrent-Paket
-Executor, Thread-Pools
-CallableundFuture
- Synchronisation über kritische Abschnitte, Locks
- Koordination (Warten und Benachrichtigen)
- Thread-Gruppen
- Algorithmen und Synchronisation
Datei Ein/-Ausgabe
- Dateien,File, Verzeichnisse listen, Dateiattribute
- Datenströme (XXXStream,Reader,Writer)
- Kompression
- Verschlüsselte Datenströme
- Serialisierung
- Benutzereinstellungen sichern
Einfache grafische Oberflächen
- Ereignisse
- AWT und Swing
- Container und Komponenten
- Ereignisse der Komponenten
- Geometrie und Layoutmanager
- Dialoge
- Swing und SWT/JFace
Netzwerkzugriffe in Java
- Das Paket java.net![[PDF]](../../images/pdfSmall.png)
- URLs und Verbindungen zum Netz
- URL-Verbindungen
- Sockets
- Netzwerk-Clients
- Ausblick auf NIO (und NIO.2)
- Server implementieren
- JavaServer Pages (JSP) und Servlets
Entfernte Methodenaufrufe und Web-Services
- Java Remote Method Invocation (RMI)
- Lokale und entfernte (remote) Objekte
- Namensdienst/Registry
- Dienstprogrammrmiregistry
- Übergabe-Semantik
- Web-Services
Datenbankzugriff mit JDBC
- Relationale Datenbanken und SQL
- Datenbanktreiber
- Eine Beispielverbindung, SQL-Anweisungen ausführen
-DriverManager,ResultSet
- Transaktionen
- DataSource
- Das DAO-Pattern
Reflection und Annotationen
- Meta-Programmierung
- Class-Objekte
- Eigenschafen zur Laufzeit auslesen
- Methoden aufrufen
- JavaBeans-Konvention
- Eigene Annotationen deklarieren
- Annotationen auswerten
XML-Verarbeitung mit Java
- Begriffswelt von XML: Elemente, Tags, Schema, Validierung
- Java API für XML, JAXP
- Lesen und schreiben mit StAX
- JDOM, DOM-Baum aufbauen und füllen
- Objekt-XML-Mapping mit JAXB
Einführung in die Java Enterprise Edition
- Bestandteile der Java EE 5
- Java EE Application-Server
- Namen-/Verzeichnisdienst JNDI
- Enterprise Java Beans (EJB)
- Java Persistence API (JPA)
- Java Message Service (JMS)
Werkzeuge
- Testen mit JUnit
- Build-Management mit Ant
- JMX und JConsole, visualvm
- Logging, Log-Auswertung
- Tools zum Einhängen von nativen Bibliotheken, JNI-Wrapper
Schulungsunterlagen
›Java ist auch eine Insel‹, Zertifikat.
Eingesetze Seminar-Software
Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.5 eingesetzt (Paket ›Eclipse IDE for Java EE Developers‹). Auf Wunsch auch NetBeans 6 oder andere Entwicklungsumgebungen (IntelliJ IDEA, Oracle JDeveloper).
Unternehmen
Weiterführende Seminare
- Eclipse IDE
- Oberflächen mit Swing und JFC
- Neuerungen in Java 5
- Datenbankanbindung über JDBC
- Java und XML
- JavaServer Pages (JSP) und Servlets
- Java 2 Platform Enterprise Edition (J2EE) 1.4
- Java Platform, Enterprise Edition (Java EE) 5
- Enterprise JavaBeans (EJB 2.1) mit XDoclet
- Enterprise JavaBeans (EJB) 3 und Persistence API
- Spring-Framework
- OR-Mapping mit Hibernate und JPA
- Java ME: Programmierung mobiler Endgeräte
- Nebenläufige Programmierung mit Threads
- Sun Certified Java Programmer (SCJP)
- Refactoring
- Design Patterns (Entwurfsmuster) in Java
- Effektiv Java programmieren
![Zu einem Bookmark-Anbieter hinzufügen [Addthis]](../../images/bookmarks/addthis.png)
![Zu Google Bookmarks hinzufügen [Google Bookmarks]](../../images/bookmarks/google.png)
![Zu Yahoo! Bookmarks hinzufügen [Yahoo! Bookmarks]](../../images/bookmarks/yahoo.png)
![Zu Delicius hinzufügen [Delicius]](../../images/bookmarks/delicious.png)
![Zu Mister Wong hinzufügen [Mister Wong]](../../images/bookmarks/misterwong.png)