Java GUI-Bibliotheken im Überblick Allgemeine Übersicht über GUI Standards, ihre Unterschiede und Gemeinsamkeiten,...SWT Einführung Aufbau und Funktionsumfang von SWT und seinen Basis-Komponenten.Ereignisverarbeitung Events und Listener als Werkzeug für die Interaktion von GUIs.SWT-Widgets und -Events GUIs interaktiver und interessanter machen mit Widgets.Grafiken mit SWT zeichnen Erstellen von zweidimensionalen Grafiken, Farben, Formen und Texten.JFace Erweiterungen von SWT durch JFace wie Zelleneditoren, Table Views,...Menüs, Symbolleisten und Aktionen Erstellen von Menüs, Statuszeilen, Symbolleisten und Aktionen.SWT- und JFace-Dialoge Der Einsatz von Dialogen für Datei- und Farbauswahl, etc.
Textkomponenten Text- und Passwortfelder, Suchen und Ersetzen von Zeichenketten, und mehr.
Datenbanken (RDBMS) Übersicht Einführung in Datenbanken allgemein, ihre Stärken und Schwächen,...JDBC JDBC - der Standard um relationale Datenbanken ohne zusätzliches Mapping anzusprechenVerbindung zur Datenbank Aufbau der Verbindung zu relationalen Datenbanken mit JDBCDaten auslesen Informationen aus der Datenbank auslesen, Umwandlung in Java Datentypen,...Daten bearbeiten Bestehende Daten ändern, Neue einfügen, Veraltete löschen und mehrPrepared Statements und Stored Procedures Der Einsatz von weiteren Zugriffsmöglichkeiten auf relationale DatenbankenStream, BLOB, CLOB, Array Die Verwendung spezieller Datentypen - sowohl aus Datenbank- als auch aus Java-SichtAusnahmen Behandlung im Fehlerfall oder speziellen SituationenMetadaten und RowSet Die Verwaltung von Metadaten und einzelner DatensätzeTransaktionen und Savepoints Arbeiten mit TransaktionenPerformance Überlegungen zur Performance-OptimierungArchitektur der Datenschicht Überlegungen zum Design der Datenschicht und ihrer Rolle im GesamtsystemObjekte in der Datenbank und ORM im Überblick Zusammenführung von objektorientiertem Code und relational gespeicherten Daten
Durch die Verbreitung von ORM ist JDBC zwar in den Hintergrund gedrängt worden, für spezielle Abfragen oder aus Performancegründen kann auf JDBC aber nicht vollständig verzichtet werden. Die Teilnehmer lernen Architektur und Arbeitsweise der JDBC-Schnittstelle kennen und SQL über die Java-Bibliotheken gezielt einsetzen. Das Seminar vermittelt außerdem die verschiedenen Treibertypen und deren Geschwindigkeit, Wissen über Transaktionen und vieles mehr für den realen Einsatz von JDBC.
Einführung in die Java Enterprise Edition Überblick über den Technologie-Stack und seinen EinsatzVerzeichnisdienste und Zugriff auf Datenbanken über JDBC Beschreibung der Datenschicht und der Zugriff auf sieEnterprise JavaBeans (EJB) EJB3 ist der aktuelle Standard für die Abbildung der Applikations-Logik und Dreh und Angelpunkt der JEE InfrastrukturJava Transaction API (JTA) Behandlung von Transaktionen in der ApplikationJava Message Service (JMS) und Message Driven Beans Komplexe Systeme bauen auf eine Vielzahl von (verteilten) Komponenten auf, JMS übernimmt die Verteilung der Nachrichten zwischen ihnenDynamische Webseiten mit JSP und JSF Zur Darstellung der Anwendung wird auf JSP und insbesondere JSF eingegangenWebServices und Java Connector Architecture (JCA) Anbindung an andere (interne oder externe) ApplikationenJava Authentication and Authorization Service (JAAS) Authentifizierung, Autorisierung und Sicherheit allgemein in JEE ApplikationenJavaMail Überblick über die effiziente Verwendung von Emails
Die Java Enterprise Edition (Java EE) ist eine Spezifikation für die Entwicklung von mehrschichtigen, verteilten Anwendungen, die in einem Applikationsserver (JBoss AS) betrieben werden. Das Seminar stellt alle Bestandteile des aktuellen Java EE Standards vor.Zum Aufbau wiederverwendbarer, verteilter Komponenten dienen die EJBs (Enterprise JavaBeans), die sich um Transaktionsmanagement, Sicherheitskontrolle, Verzeichnisdienst, Persistierung und weitere Services kümmern. Bei der Präsentationsschicht für den Aufbau dynamischer Webseiten werden die Technologien Servlets, JSP, JSTL und JSF komprimiert vorgestellt. Außerdem wird die Behandlung von Sicherheit (JAAS), Emails (JavaMail) und die Anbindung an andere Applikationen (SOA-Konzept, WebServices und JCA) behandelt.
Überblick Generelle Konzepte, Begriffe und ihr EinsatzDie Java Sandbox Grundlegende Umgebung in der Java ausgeführt wird und die Auswirkungen davonJava Sprachkonzepte Sprachkonzepte die die Sicherheit betreffen, wie Typing, Memory Management,...Zugriffsbeschränkung und Class LoaderProtection Domains, das Laden von Klassen und mehrSecurity Providers Die Architektur von Security Providern und die nützlichsten APIs in diesem UmfeldSchlüssel, Zertifikate und ihr Management Die Erstellung und Speicherung von Keys und Zertifikaten mit JavaHashfunktionen und digitale Signaturen Hashes und Signaturen erstellen, prüfen und verwaltenVerschlüsselung Überblick und Einsatz symmetrischer und asymmetrischer VerschlüsselungAuthentifizierung und Autorisierung Das Java Authentication and Authorization Service
Sicherheit, besonders im Business Umfeld, ist ein extrem wichtiges aber oft vernachlässigtes Thema. Es kann nicht nachträglich auf bestehenden Code aufgesetzt werden, sondern muss bereits in der grundlegenden Planung bedacht werden, um effizient und effektiv eingesetzt werden zu können.Der Kurs veranschaulicht Security im Bereich der Applikations-Entwicklung (Spracheigenschaften, diverse APIs,...), Administration (grundsätzliche Umgebung und ihre Wartung), Kommunikation (Verschlüsselung, Signaturen, Hashes) und mehr, wobei der Fokus auf Java SE liegt.
Einführung in das Build Management Grundlagen von Build Tools, Alternativen zu Ant und der Einsatz in IDEs.Ant Core Tasks Grundfunktionen des Build Prozesses.Ant Optionale Tasks Erweiterte Funktionen für automatische Tests, den Umgang mit JEE Anwendungen,...Weitere Konzepte und Third Party Tasks Continuous Integration, statische Analyse des Quelltextes und mehr.
Apache Ant ist ein bewährtes, quelloffenes und kostenloses Tool, das den Bau (Build) und die Bereitstellung (Deployment) von Java-Anwendungen vereinfacht.Dieses Seminar vermittelt durch seine praxisnahen Beispiele den Aufbau der XML-basierten Build-Skripte und beschreibt die wichtigsten Ant Tasks mit allen benötigten Attributen bzw. Konfigurationsdateien für plattformunabhängiges Erstellen von Java-Anwendungen.
Java EE-Technologien im Überblick Überblick über die wichtigsten JEE Technologien - je nach Vorkenntnissen und Bedürfnissen.JBoss AS Architektur Grundlegende Module und Aufbau des Application-Servers.Deployment und Packaging Optimale Aufteilung und Verteilung von JEE Applikationen.Konfiguration und Connectors Konfiguration im Detail und Anbindung an weitere Dienste (Datenbanken, Active Directory,...)Security Authentifizierung, Authorisierung, sichere Entwicklung, etc.Performance Optimierung Konfigurationseinstellungen rund um die Optimierung der Performance (AS, System,...).Praxiseinsatz Logging, Monitoring, Einsatz als Service und mehr.Hochverfügbarkeit und Clustering Ausfallssicherheit und horizontale Skalierung für mehr Leistungsfähigkeit.
Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.6 (Helios) verwendet.Als Servlet-Container wird Apache Tomcat 6 eingesetzt.
Apache Wicket ist ein komponentenbasiertes Open Source Web-Framework für Java. Ziel war eine einfache und intuitive Herangehensweise zur Entwicklung robuster Web-Anwendungen. Das Seminar stellt die Architektur vor und führt mithilfe komfortabler Tools in die Entwicklung Web-basierterInterfaces ein. Die Teilnehmer lernen den Umgang mit Lebenszyklus, Validierung und Konvertierung, Ereignis- und Fehlerbehandlung, Internationalisierung und den Einsatz von Ajax durch praktische Beispiele kennen und können die Darstellungsschicht einer mehrschichtigen Java EE-Anwendung programmieren.
Grundlagen zu JSF Grundlagen zu Architektur, Entwicklung und Abgrenzung zu anderen Technologien.Installation und Konfiguration Einsatz unter Apache Tomcat mit Eclipse.Implementierungen und Tag-Libraries Detaillierter Überblick über die verfügbaren Implementierungen und Tag-Libraries.Navigation Die Erstellung von Navigationsregeln und dynamischer Navigation.Managed Beans / Backing Beans Anbindung des Interfaces an die Business Logik.JSF-Lebenszyklus Ein mächtiges Werkzeug dessen richtiger Einsatz praktisch vorgestellt wird.Validierung und Konvertierung Arbeiten mit Eingaben mit vorhandenen oder selbstgeschriebenen Komponenten.
JavaServer Faces (JSF) ist ein standardisiertes komponentenorientiertes Web-Framework zur Entwicklung robuster Web-Anwendungen. Das Seminar stellt die Architektur vor und führt mithilfe komfortabler Tools in die Entwicklung Web-basierter JSF Interfaces ein. Die Teilnehmer lernen den Umgang mit Tag-Libraries, Navigation, Managed Beans / Backing Beans, JSF-Lebenszyklus, Validierung und Konvertierung, Ereignis- und Fehlerbehandlung, Internationalisierung und den Einsatz von Ajax durch praktische Beispiele kennen und können die Darstellungsschicht einer mehrschichtigen Java EE-Anwendung programmieren.
Entscheidungsträger, Administratoren,... die einen Überblick von JEE erhalten möchten.
Java Enterprise Edition ist ein äußerst mächtiger und gleichzeitig komplexer Standard. Kursteilnehmer erhalten einen theoretischen Überblick über die wichtigsten Komponenten, Stärken des Systems und wie JEE im eigenen effektiv Umfeld eingesetzt werden kann.
Entwurfsstrategien für mehrschichtige Anwendungen Allgemeine Überlegungen und Überblick im Architektur UmfeldMuster der Präsentationsschicht Design Patterns bei der Darstellung von JEE AnwendungenMuster der Geschäftsschicht Effiziente Umsetzung der Business Logik durch die richtigen StrategienMuster der Integrationsschicht Gezielte und strukturierte Einbindung heterogener Systeme in ein GesamtkonzeptPerformance von Enterprise-Anwendungen Caching, Clustering und mehr für verbesserte Performance
Die Spezifikation von Java Enterprise Edition umfasst nicht nur eine die Entwicklung wiederverwendbarer, verteilter, mehrschichtiger Anwendungen, sondern auch eine Sammlung von Best Practices bzw. sogenannten Blueprints. Diese bewährten Designstrategien sind Hauptthema im Kurs, wenn Teilnehmer in den Schichten einer üblichen Web-Anwendung Konzepte wie MVC-II, Fassaden, Datenzugriffsobjekte (DTOs) und dergleichen praktisch anwenden.Einen besonderen Stellenwert nehmen aber auch Performance-Überlegungen ein, wobei konkret auf Transaktionssteuerung, Caching, Clustering und noch mehr eingegangen wird.
Einführung in JavaGrundlegende Eigenschaften, die Java Umgebung, Hintergrundwissen, EntwicklungsumgebungGrundlegende SpracheigenschaftenAufbau der Sprache und essentielle Konzepte und Erstellung der ersten ProgrammeObjektorientierungGrundlagen der Objektorientierung und die praktische Umsetzung in JavaWeiterführende SpracheigenschaftenLebensdauer von Objekten, Strukturen von Informationen und weitere fortgeschrittene ThemenZeichenkettenDer Einsatz von einzelnen Zeichen und ZeichenkettenDie Java-APIWichtige Pakete und das Arbeiten mit SchnittstellenWiederverwendung in der ObjektorientierungVererbung, Assoziationen und Zugriff auf ObjekteAusnahmebehandlungFehler und Spezialfälle erkennen und effizient behandelnWeitere Java-Bibliotheken und ToolsDie Behandlung von Zeit in Java und das Arbeiten mit fertigen Paketen
In diesem Seminar lernen die Teilnehmer die objektorientierte Sprache Java anhand der aktuellen Version kennen und praktisch einzusetzen.Die Schulung vermittelt einen guten Überblick über Grundlagen und wichtige Pakete, die es ermöglichen plattformunabhängige Anwendungen zu entwickeln. Einen besonderen Schwerpunkt im Kurs legen wir auf objektorientierte Konzepte und Praxisbezug.
Java GUI-Bibliotheken im Überblick Allgemeine Übersicht über GUI Standards, ihre Unterschiede und Gemeinsamkeiten,...Swing Einführung Generelle Konzepte und grundlegende Eigenschaften von Swing.Panels und Panes Der Einstieg in die Entwicklung von Panels und Panes.Fenster und Dialoge Das Erstellen von Fenstern und Dialogen, ihre Farbe und Anordnung,...Menüs und Werkzeugleisten Neben Menüs und Werkzeugleisten werden auch noch Fortschrittsbalken und mehr vorgestellt.Look and Feel (LaF) Der Einsatz von LaFeel um Applikationen ein bestimmtes Aussehen und Verhalten zuzuweisen.Listen, Tabellen und Bäume Der Umgang mit Listen, Tabellen und Bäumen.Textelemente Einsatz diverser Text- und Passwortfelder.Weitere Anwendungsbereiche Drag-and-Drop, Internationalisierung, Drucken,
Das Java-Seminar führt in die Programmierung komplexer grafischer Oberflächen mit Swing ein. Neben den elementaren Swing-Komponenten vermittelt der Kurs ebenso die komplexeren Elemente wie Listen, Tabellen, Bäume und Textfelder sowie das zugrundeliegende Pattern Model-View-Controller (MVC).Die Teilnehmer lernen wie mit Hilfe eines GUI-Builders schnell grafische Oberflächen entstehen und größere Masken effektiv aufzubauen sind. Ein weiteres Element des Kurses bilden Design-Fragen, etwa wie die grafische Oberfläche von den Geschäftsobjekten losgelöst wird und dem GUI-Design, also der Frage welche Prinzipien hinter der Gestaltung von grafischen Oberflächen stehen. Swing ist der wichtigste Bestandteil der Java Foundation Classes (JFC), damit erlernen die Teilnehmer erweiterte Techniken wie die Java 2D-Bibliothek, Zwischenablage, Drucken und Drag-and-Drop.
Einführung in EJB3 und Java EE Allgemeiner überblick über JEE allgemein und EJB3 im SpeziellenSession Beans Der Begriff Session Beans, ihr Leistungsumfang und die konkrete VerwendungMessage Driven Beans und Java Message Service (JMS) Wie Nachrichten im Umfeld von JEE effizient und sicher ausgetauscht werden könnenInjections und Callbacks Die Verwendung von Injections und Callbacks für die effiziente Applikations-EntwicklungDatenbankanbindung mit JPA und Entity Beans Die Anbindung von relationalen Datenbanken über die JPA und das Zusammenspiel mit BeansMappings Das Mappen zwischen Objekten auf Code-Ebene und relationalen Datenbanken
Die Java Enterprise Edition (Java EE) ist eine Spezifikation für die Entwicklung von mehrschichtigen, verteilten Anwendungen, die in einem Applikationsserver (JBoss AS) betrieben werden. Zum Aufbau wiederverwendbarer, verteilter Komponenten dienen die EJBs (Enterprise JavaBeans), die sich um Transaktionsmanagement, Sicherheitskontrolle, Verzeichnisdienst, Persistierung und weitere Services kümmern. Mit dem neuen, vereinfachten EJB3 Standard (JSR 220) stehen einfache Plain Old Java Objects (POJO) wieder im Mittelpunkt und werden mit Annotationen zu wiederverwendbaren Komponenten. Im ersten Teil des Seminars bilden die Teilnehmer die Geschäftslogik mit zustandslosen und zustandsbehafteten Session Beans und Message Driven Beans ab. Im zweiten Teil werden unter anderem mit der Java Persistence API (JPA) Entity Beans modelliert und mit dem Entity-Manager CRUD-Operationen (Anlegen, Lesen, Aktualisieren, Löschen) durchgeführt.
Management und Monitoring von Applikationen Verschiedene Standards im Überblick mit Fokus auf JMX.Architektur der Java Management Extensions Detaillierte Beschreibung und praktischer Einsatz von JMX.MBeans Der Umgang mit MBeans - Standard, Dynamic, Model und Open MBeans.Monitoring, Timer und Notifications Einsatz der Service-Monitors und ihrer spezifischen Eigenschaften.Protokoll-Adpater und Connectors Überblick und praktischer Einsatz verschiedener Kommunikationswerkzeuge.Fortgeschrittene JMX Themen Arbeiten mit Apache Tomcat und JBoss AS, Security
Mit der Java Management Extensions (JMX) ist umfassendes und gleichzeitig einfaches Monitoring und Management von Java-Anwendungen möglich. Im Kurs werden die verschiedenen MBeans behandelt, außerdem wird die JConsole vorgestellt, sowie mittles des HTTP- und RMI-Adapters Ressourcen zugänglich gemacht. Neben der Möglichkeit, Java-Applikationen mit JMX zu überwachen und verwalten, lernen die Teilnehmer die JMX-Services Monitor (Counter, Gauge, String), Timer und M-Let kennen.
Google Web Toolkit (GWT) Grundlagen Genereller Aufbau und Eigenschaften von GWT.GWT Widgets und Ereignisse Standardmäßig vorhandene Widgets und der Umgang mit Ereignissen.Remote Procedure Call (RPC) mit GWT Entwicklung von verteilten und mehrschichtigen Anwendungen mit GWT.Formulare und Datenaustausch Umgang mit Formularen und Informationsaustausch, insbesondere mit JSON.Java Script Native Interface (JSNI) in GWT Ein mächtiges Werkzeug um nicht nur generierten JavaScript Code verwenden zu müssen.Anwendungen modularisieren Definition und Einsatz von Modulen für die effektive Applikations-Entwicklung.Weitere GWT Widgets und Widget-Sammlungen Komplexere und kommerzielle Widgets.Fortgeschrittene GWT Themen Ob Caching oder Security - hier werden Fragen aus dem Alltag beantwortet.
Mit dem Google Web Toolkit (GWT) kam 2006 ein entwicklerfreundliches und freies Framework zur Programmierung von Rich Internet Applikationen auf den Markt. Eine Besonderheit ist der Java-zu-JavaScript-Compiler, der Java-Entwicklern das Arbeiten in ihrer gewohnten Entwicklungsumgebung ermöglicht, die Ausgabe erfolgt allerdings in übersetzten HTML-Seite mit CSS und JavaScript-Funktionen. Die Teilnehmer lernen praxisnah Ajax-Applikationen mit GWT zu entwickeln, welche Entwicklungs-Tools geboten und wie effektive mehrschichtige GWT-Anwendungen entworfen werden. Das Seminar stellt außerdem das Debugging und zusätzliche freie und kommerzielle Komponenten vor.
GrundlagenGrundlegende Konzepte und die Implementierung in JavaDas Paket java.util.concurrentZentrales Paket für das Arbeiten mit Locks und ZeitExecutor und SchedulingAusführung und Planung von ThreadsRunnable und CallableArbeiten mit den Interfaces für das Ausführen von Threads und ihre UnterschiedeKomfortable Thread-KoordinationBlockierende und nicht-blockierende, priorisierte und verzögerte QueuesAnwendung von Threads in der Java-Bibliothek Der praktische Einsatz in Java zum besseren allgemeinen VerständnisTestingHerausforderungen beim Testen mit Threads
Java erlaubt das einfache Programmieren von multithreaded Applikationen. Das Kompaktseminar wiederholt zunächst die Grundlagen paralleler Anwendungen und die Teilnehmer lernen die seit Java 5.0 eingeführten neuen Klassen und Schnittstellen aus dem Paket java.util.concurrent und Unterpaketen kennen, mit denen die Thread-Koordination nunmehr komfortabel und effektiv möglich ist.
Grundlagen des Software-Testens Allgemeine Überlegungen, Ansätze und Herangehensweisen an Software-Tests.JUnit im DetailJUnit verwenden - Fixtures, Rules, Integration in Eclipse, Timeouts,...Anwendungen mit JUnit testen Einsatz in realen Applikationen und wie die Testbarkeit verbessert werden kann.EMMA - Code CoverageAnalyse der Code Coverage mit EMMA, einem quelloffenen Java Tool.Web-Applikationen testen Ansätze und Tools für das Testen von JEE Anwendungen.Verteilte Applikationen testen Tools für das Testen von WebServices, RMI Systemen und mehr.GUI Applikationen testen Umgang mit GUI Applikationen, Sinnhaftigkeit und Möglichkeiten für Tests.Weitere Test-Tools Vorstellung weiterer Tools für Performance Tests, Continuous Integration
Teilnehmer lernen in diesem Seminar JUnit, Test-NG und weitere Open-Source-Werkzeuge zum einfachen und automatisiertem Testen von Java-Applikationen kennen.Mit JUnit lassen sich Fehler durch Abweichungen von festgelegten Anforderungen schnell finden und stabile Versionen ausliefern, um die Qualität der Software dauerhaft sicherzustellen. Praktisch wenden Teilnehmer die testgetriebene Entwicklung an, in der sie zunächst über JUnit-Testfälle ausreichend Wissen über das Verhalten einer Komponente erlangen, um diese anschließend implementieren zu können.