Java-Persistenz mit Hibernate April 2006

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Java-Persistenz mit Hibernate April 2006"

Transkript

1 Newsletter April 2006 Einleitung Der OR-Mapper Hibernate hat inzwischen eine sehr weite Verbreitung erreicht nach eigenen Angaben ist Hibernate der klare Marktführer bei OR-Mappern. Immer mehr Projekte nutzen Hibernate, das inzwischen in der Version 3 vorliegt, um auf einfache Art und Weise ihre Java-Objekte in relationalen Datenbanken zu speichern. Dieser Newsletter erläutert die Funktionsweise von Hibernate, zeigt die Vorteile, die sich beim Einsatz von Hibernate ergeben und gibt einen Ausblick auf die Zukunft von Hibernate im Zusammenhang mit EJB 3. Der Gesamtzusammenhang Gavin King gründet das Hibernate-Projekt im November 2001 unter der Open-Source-Plattform Sourceforge. Im Juni 2003 wird Hibernate 2.0 veröffentlicht und erreicht eine sehr große Verbreitung (mehrere Downloads pro Monat). Die Industrie beginnt, sich ernsthaft für Hibernate zu interessieren. Im Oktober 2003 integriert sich Hibernate in die JBoss-Gruppe. Im April 2004 gibt es eine Million Klicks auf Im Juni 2004 erscheint die Draft-Version von EJB 3, dessen Persistenzmodell erheblich von Hibernate beeinflusst wurde. Im März 2005 wird Hibernate 3.0 veröffentlicht. Diese Entwicklung hat zwei wesentliche Kritikpunkte an Hibernate entkräftet: Hibernate wurde vorgeworfen, so genannte Guru-Software zu sein. Hibernate sei abhängig vom Projektgründer Gavin King. Inzwischen beteiligen sich viele andere Programmierer an der Weiterentwicklung von Hibernate. Außerdem ist durch den Beitritt von Hibernate zur JBoss-Gruppe auch ein kommerzieller Firmenhintergrund für Hibernate geschaffen worden. Hibernate wurde die fehlende Standardisierung entgegengehalten. Durch den Einfluss von Hibernate auf das Persistenzmodells von EJB 3 sowie die Verbreitung von Hibernate kann man bereits heute von einem Quasi-Standard sprechen. Der Migrationspfad zu EJB 3 ist bereits heute in Hibernate angelegt und damit steht auch der formalen Standardisierung nichts im Weg. Funktionsweise von Hibernate Hibernate verfolgt den Ansatz transparenter Persistenz mit POJOs (POJO = Plain Old Java Object). Das bedeutet, dass die Geschäftsobjekte nicht geändert werden müssen, um persistierbar zu sein. Sie werden wie ganz normale nicht-persistente Geschäftsobjekte programmiert (siehe Code-Beispiel 1 im Anhang). Wie die Geschäftsobjekte auf die Datenbank abgebildet werden, wird in Mappingdateien beschrieben, die im XML-Format definiert werden. In den Mappingdateien wird festgelegt, welche Geschäftsobjekte persistent sein sollen, welche Felder wie in der Datenbank abzulegen sind und welche Beziehungen zu anderen persistenten Geschäfttsobjekten existieren (siehe Code-Beispiel 2 im Anhang). Dabei können die Mappingdateien sehr schlank ausfallen, weil Hibernate die meisten Definitionen selbst mit sinnvollen Defaultwerten bestücken kann. So ist für das Schreiben und Pflegen der Mapping-Dateien nur geringer Aufwand notwendig.

2 Die Mappingdateien können über XDoclet auch aus Java-Quellcode generiert werden (siehe [2] und [4]). Darüber hinaus unterstützen vielen MDA 1 - und MDSD 2 -Werkzeuge die Generierung von Hibernate-Mappingdateien. Wenn das System gestartet wird, liest Hibernate die Mappingdateien ein und generiert zur Laufzeit Bytecode, der für die transparente Persistenz sorgt. Java-VM Termin.java javac Termin.class Hibernate Termin.class Der Anwendungscode, der mit den persistenten Geschäftsobjekten umgeht, ist natürlich abhängig von Hibernate. Er muss insbesondere das Suchen, Laden und Speichern von Geschäftsobjekten initiieren. Dabei spielt die Klasse Session eine zentrale Rolle (siehe Code-Beispiel 3 im Anhang). Sie stellt die Funktionen zum Laden, Speichern und Löschen von Geschäftsobjekten zur Verfügung, erledigt das Caching und stellt den Zugang zu den Hibernate-Abfragemöglichkeiten dar. Hibernate Datenbank Anwendungscode Geschäftsobjekte Datenbank-Abfragen werden in HQL (Hibernate Query Language) definiert. Die HQL ist an SQL angelehnt, so dass sie mit SQL-Grundkenntnissen leicht zu erlernen ist (siehe Code-Beispiel 4 im Anhang). Außerdem kann Hibernate so die HQL performant auf SQL abbilden. 1 MDA=Model Driven Architecture 2 MDSD=Model Driven Software Development

3 Performance Ein wichtiges Kriterium für OR-Mapper ist die Performance. Hibernate benutzt eine Mischung aus Bytecode- Generierung und Core-Reflection, die zu einem vernachlässigbar kleinen Overhead führt. Bei der direkten Datenbank-Kommunikation spielt Hibernate seine Stärken aus. Hier wirken sich primär drei Hibernate-Konzepte positiv aus: 1. Spezifische Datenbank-Adapter 2. Caching pro Session (First Level Cache) 3. Lazy-Loading (Load on Demand) Hibernate nutzt die standardisierte JDBC-Schnittstelle zum Zugriff auf die Datenbank. Gleichzeitig verwendet Hibernate spezifische Datenbank-Adapter, die Detailwissen über das konkrete Datenbank-Management-System besitzen. Sie ist es Hibernate möglich, Optimierungen ganz genau auf das verwendete Datenbank-Management- System zuzuschneiden. Die Verwendung der Datenbankadapter ist dabei für den Entwickler transparent. Er muss nur in einer Konfigurationsdatei den verwendeten Datenbanktyp angeben. Eine Programmanpassung bei Änderung des verwendeten Datenbanksystems ist nicht notwendig. Hibernate bringt spezifische Datenbank-Adapter für alle gängigen Datenbank-Management-Systeme (DB2, Oracle, mysql, PostgreSQL, etc.) mit. Speichert die Anwendung ein Geschäftsobjekt über Hibernate, wird das Objekt nicht sofort in die Datenbank geschrieben. Stattdessen wird das Geschäftsobjekt zunächst in einem Cache zwischengespeichert. Erst wenn die Transaktion abgeschlossen oder der Cache explizit geleert wird, werden die Geschäftsobjekte auch in die Datenbank geschrieben. Wird ein Objekt angefordert, dass sich bereits im Cache befindet, wird es direkt von dort geliefert ein Datenbankzugriff ist nicht notwendig. Dadurch wird die Anzahl der Datenbankzugriffe deutlich reduziert und die Dauer von Transaktionen auf der Datenbank minimiert. Werden Objekte geladen, arbeitet Hibernate mit Lazy-Loading. Das bedeutet, dass immer nur so viele Daten aus der Datenbank geladen werden, wie im Moment benötigt werden. Werden weitere Daten benötigt, werden diese transparent nachgeladen. Weiß die Anwendung bereits vorher, dass sie viele Daten auf einmal benötigen wird, kann sie mit Join-Fetching das Lazy-Loading auch gezielt ausschalten. Insgesamt kann man festhalten, dass Hibernate sehr guten SQL-Code generiert, der häufig sogar handoptimiertem SQL überlegen ist. Sollte es einmal Hart auf Hart kommen, kann man Hibernate immer noch sein eigenes hoch optimiertes SQL unterschieben.

4 Vorteile von Hibernate Die Verwendung von Hibernate bringt viele gewichtige Vorteile mit sich: Hibernate erlaubt ein performantes OR-Mapping unter Ausnutzung der spezifischen Datenbankmöglichkeiten, ohne vom konkreten Datenbank-Management-System abhängig zu werden. Geschäftsobjekte müssen für die Verwendung mit Hibernate nicht angepasst werden (Hibernate ist minimal-invasiv). Hibernate ist Open-Source. Dadurch entfallen nicht nur die Lizenzkosten. Viel wichtiger ist die Möglichkeit, durch Lesen des Quelltextes ein besseres Verständnis der Hibernate-Funktionsweise zu bekommen. Da man so auch in den Hibernate-Quelltext hinein debuggen kann, ist bei Fehlerfällen auch leicht festzustellen, ob das Problem bei Hibernate oder in der eigenen Anwendung besteht. Das ist insbesondere während der Lernphase sehr wichtig. Gleichzeitig erhöht sich die Investitionssicherheit, weil man Bugs zu Not selbst beheben kann. Durch den Einsatz von Hibernate lassen sich ca. 30% Anwendungscode im Gegensatz zur Programmierung auf JDBC-Basis sparen. Weniger Code bedeutet höhere Produktivität und geringere Fehlerwahrscheinlichkeit. Hibernate hat sich als Quasi-Standard etabliert. Es gibt sehr viele Entwickler mit Hibernate-Know-How, sehr viele Informationsmöglichkeiten im Internet und eine gute Unterstützung in anderen Werkzeugen und Frameworks (z.b. auch im Spring-Framework, siehe [5]). In EJB 3 wird das Persistenzmodell runderneuert und an Hibernate ausgerichtet. Wer heute Hibernate einsetzt, befindet sich bereits auf dem Weg hin zu EJB 3. Dem Quasi-Standard folgt also der offizielle Industriestandard. Gegenüber JDO (siehe [6]) bringt Hibernate eine Reihe von Vorteilen mit sich: o Bei JDO ist die Generierung von Bytecode ein eigener Post-Compile-Lauf, der den Build- Prozess verkompliziert und die Entwicklung verlangsamt. o JDO gibt es bis heute nur von kommerziellen Herstellern, so dass z.t. erhebliche Lizenzkosten anfallen. o Support gibt es daher ebenfalls nur direkt vom Hersteller, während sich bei Hibernate eine riesige weltweite Community entwickelt hat, die sich gegenseitig bei Problemen hilft. o Während Hibernate aus der direkten Praxiserfahrung entstanden ist, wurde JDO am grünen Tisch entworfen. Viele Probleme wurden erst im Nachhinein beim Praxiseinsatz deutlich, so dass die JDO-Spezifikation geändert werden musste. Diese Anpassung der Spezifikation an die Praxisbedürfnisse und die Umsetzung der neuen Spezifikation durch die Hersteller ist ein langwieriger Prozess. Zwangsläufig haben die JDO-Hersteller eigene spezifische Erweiterungen in ihre JDO-Produkte eingebaut, die die Softwareprojekte von Ihnen abhängig machen (so genanntes Vendor Lock In). Gegenüber Entity-Beans (siehe [7]) ist Hibernate deutlich leichtgewichtiger, einfacher zu programmieren und vor allem auch ohne Application-Container lauffähig. Letzteres mag für den Produktiveinsatz des Systems nur ein sekundäres Argument sein. Allerdings kann dadurch während der Entwicklung so manches langwierige Deployment vermieden werden. Außerdem erhöht es die Testbarkeit ernorm.

5 Die Zukunft von Hibernate Hibernate wird den kommenden Standard EJB 3 unterstützen und unterstützt heute bereits die wesentlichen Anteile des Persistenz-APIs von EJB 3, so dass eine spätere Migration mit überschaubarem Aufwand möglich ist. Lediglich die Hibernate-Mappingdateien müssen durch Java-5-Annotationen ausgetauscht werden. Dabei wird die Beschreibung der Persistenzeigenschaften mit EJB 3 noch etwas einfacher: Während bei Hibernate jedes nicht spezifizierte Feld eines Geschäftsobjekte transient ist, ist es bei EJB 3 genau umgekehrt. Per Default sind alle Felder eines Geschäftsobjektes persistent. Nur transiente Felder müssen explizit deklariert werden. Zusammenfassung Am Thema Hibernate kommt man heute nicht vorbei. Die Alternativen sind entweder zu schwergewichtig, zu instabil, funktional zu schwachbrüstig oder einfach noch nicht verfügbar. Mindestens jetzt neu gestartete Java- Projekte sollten Hibernate ernsthaft evaluieren. Unser Angebot zu Hibernate Wir setzen Hibernate seit Langem in unseren eigenen Projekten ein. Darüber hinaus arbeiten drei Hibernate-Buchautoren (siehe [2]) bei uns und bieten Beratung und Schulungen zur Hibernate- Einführung an. Ausführliche Informationen finden Sie unter hibernate.akquinet.de.

6 Referenzen 1. Hibernate: 2. Robert Beeger, Arno Haase, Stefan Roock, Sebastian Sanitz : Hibernate Persistenz in Java- Systemen mit Hibernate 3, dpunkt Verlag, Quellcode zu den Beispielen aus [2]: 4. XDoclet-Generierung der Hibernate-Mappingdateien im Detail: 5. Spring-Framework: 6. JDO (Java Data Objects): 7. Entity-Beans sind Bestandteil von EJB 2.1: Anhang: Beispielquellcode Hibernate Code-Beispiel 1: Persistentes Geschäftsobjekt public class Termin { private long _id; private String _titel; private String _beschreibung; private String _ort; private Date _datum; private Set<Benutzer> _teilnehmer; public String gettitel () { return _titel; private void settitel (String titel) { _titel = titel; Code-Beispiel 2: Mapping-Datei <?xml version="1.0" encoding="iso "?>

7 <hibernate-mapping package="ab.de"> <class name="termin" table="termin"> <id name="id"> <generator class="hilo"/> </id> <property name="titel"/> <property name="beschreibung"/> <property name="datum" type="timestamp"/> <property name="ort" column="wo"/> <set name="teilnehmer" /> </class> </hibernate-mapping> Code-Beispiel 3: Session als zentrale Hibernate-Klasse Termin termin = new Termin(); try { Session session = _sessionfactory.opensession(); Transaction transaction = session.begintransaction(); session.save(termin); transaction.commit(); catch (HibernateException e) { Code-Beispiel 4: HQL Hibernate Query Language Session session = _sessionfactory.opensession(); Query query = session.createquery( from Termin t where t.ort = Berlin ); List<Termin> termine = query.list(); session.close();

8 Unsere Schulungen akquinet auf einen Blick Wir bieten Beratung und Schulungen zu Eclipse RCP, Groovy/Grails sowie zu agilen Themen wie Scrum oder extreme Programming an. Weitere Infos finden Sie unter Individualentwicklung Standardlösungen Outsourcing agiles Vorgehen Beratung und Betrieb von SAP- und Navison- Systemen Open-Source-basierte Systeme Weitere Informationen erhalten Sie gerne unter Kontakt: akquinet AG Paul-Stritter-Weg Hamburg Fon +49 (0)

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate Hibernate Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen Nabil janah 1 Hibernate Inhalt Hibernate allgemeines Vorteile von Hibernate Hibernate-Architektur

Mehr

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java Oliver Kalz Agenda Grundlagen Objektpersistenz Objektrelationales Mapping Performance Fazit

Mehr

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten)

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) O/R Mapping - Objekte (Attribute) - 1:1, 1:n, n:m Beziehungen - Vererbungen (- Interfaces)

Mehr

Gregor Raschke 2008 HIBERNATE. Eine Einführung

Gregor Raschke 2008 HIBERNATE. Eine Einführung 1 HIBERNATE Eine Einführung Inhalt 2 Einleitung Beispielkonfiguration Die hibernate.cfg.xml Eine Beispieltransaktion Abfragemöglichkeiten JPA und Hibernate Ressourcen und Quellen Einleitung (1) - Geschichtliches

Mehr

JDO Java Data Objects

JDO Java Data Objects JDO Java Data Objects Ralf Degner, Chief Consultant Ralf.Degner@poet.de Agenda POET Motivation Geschichte Einführung Architekturen FastObjects POET Gegründet 1993 Zwei Produktlinien esupplier Solutions:

Mehr

Open-Source Transparente Persistence (keine Interfaces, keine Ober- Klassen) Caching

Open-Source Transparente Persistence (keine Interfaces, keine Ober- Klassen) Caching 1 Was ist Hibernate Hibernate ist ein Open-Source-Java-Persistenz-Framework für relationale Datenbanken Persistenz-Frameworks: kapseln und abstrahiert den Zugriff auf eine Speicherschicht -> Zwischenschicht

Mehr

Workshop Java Webentwicklung Einführung in Hibernate. Ulrich Stärk

Workshop Java Webentwicklung Einführung in Hibernate. Ulrich Stärk Workshop Java Webentwicklung Einführung in Hibernate Ulrich Stärk Ablauf Montag bis Donnerstag 09:00 Uhr s.t. Beginn, bis ca. 17:00 Uhr 1 Stunde Mittagspause Donnerstag Experiment Aufzeichnung der Programmiertätigkeit

Mehr

Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Version: 2014 Orientation 1.0 in Objects GmbH Der Sprecher Erik Bamberg (OIO) 2 1 s Aufgaben des Cachings Datenbank

Mehr

Hibernate Das Praxisbuch für Entwickler

Hibernate Das Praxisbuch für Entwickler Sebastian Hennebrüder 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Hibernate Das Praxisbuch für Entwickler Galileo

Mehr

Objekt-relationales Mapping und Performance-Tuning

Objekt-relationales Mapping und Performance-Tuning Objekt-relationales Mapping und Performance-Tuning Thomas Krüger tkrueger@vanatec.com Agenda Wege um Daten zu lesen Wege um Daten zu modellieren Wege um Datenbanken effizient zu nutzen 2 2 Wege, Daten

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans JPA - JAVA Persistence API Problem In JAVA-programmen arbeitet man mit Hauptspeicherobjekten. Nach Beendigung des Programmes sind diese nicht mehr vorhanden.

Mehr

Objektorientierte Datenbanken

Objektorientierte Datenbanken OODB 11 Slide 1 Objektorientierte Datenbanken Vorlesung 11 Sebastian Iwanowski FH Wedel OODB 11 Slide 2 Wesentliche Eigenschaften von Hibernate Transparente Persistenz Transitive Persistenz (Persistenz

Mehr

3 Hibernate ein einfaches Beispiel

3 Hibernate ein einfaches Beispiel 35 In diesem Kapitel steigen wir anhand eines kleinen Beispiels in das Thema Hibernate ein. Als Beispiel verwenden wir einen elektronischen Terminkalender, mit dem persönliche und Gruppentermine verwaltet

Mehr

Hibernate. Persistenz in Java-Systemen mit Hibernate und der Java Persistence API. von Robert F. Beeger, Arno Haase, Stefan Roock, Sebastian Sanitz

Hibernate. Persistenz in Java-Systemen mit Hibernate und der Java Persistence API. von Robert F. Beeger, Arno Haase, Stefan Roock, Sebastian Sanitz Hibernate Persistenz in Java-Systemen mit Hibernate und der Java Persistence API von Robert F. Beeger, Arno Haase, Stefan Roock, Sebastian Sanitz 2., überarb. u. erw. Aufl. Hibernate Beeger / Haase / Roock

Mehr

Eclipse und EclipseLink

Eclipse und EclipseLink Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als

Mehr

Referent: Marko Modsching. Vortrag: JPA mit Hibernate. Datum: 04.01.2011. Deutsche Software Engineering & Research GmbH

Referent: Marko Modsching. Vortrag: JPA mit Hibernate. Datum: 04.01.2011. Deutsche Software Engineering & Research GmbH Referent: Marko Modsching Vortrag: JPA mit Hibernate Datum: 04.01.2011 Deutsche Software Engineering & Research GmbH Steinstraße 11 02826 Görlitz Germany Telefon: +49 35 81 / 374 99 0 Telefax: +49 35 81

Mehr

.NET Entity Framework 4

.NET Entity Framework 4 1.NET Entity Framework 4 Grundlagen und Einsatz in.net 4.0 W3L AG info@w3l.de 2010 2 Agenda Motivation OR-Mapping-Frameworks Entity Framework 4 Entwicklung Mapping & Architektur Generatorverfahren Praxisbeispiel

Mehr

Hivemind Ein leichtgewichteter Container

Hivemind Ein leichtgewichteter Container Hivemind Ein leichtgewichteter Container Manfred Wolff, wolff@manfred-wolff.de, www.manfred-wolff.de Container sind Laufzeitumgebungen für Objekte. Der mächtigste Container im Java-Umfeld der EJB Container

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

Projekt Weblog :: Integration

Projekt Weblog :: Integration Projekt Weblog :: Integration Die Implementation des Formhandling Frameworks wird nun im Projekt Weblog integriert. Dafür stehen 2 Möglichkeiten zur Auswahl. Sie haben Ihre eigene Implementation der Actions,

Mehr

Java Connectivity mit Caché extreme (Persist & Perform ohne Umwege) Gerd Nachtsheim, Senior Sales Engineer, InterSystems

Java Connectivity mit Caché extreme (Persist & Perform ohne Umwege) Gerd Nachtsheim, Senior Sales Engineer, InterSystems Java Connectivity mit Caché extreme (Persist & Perform ohne Umwege) Gerd Nachtsheim, Senior Sales Engineer, InterSystems InterSystems Unternehmensprofil Internationales Softwareunternehmen Hauptsitz in

Mehr

Übungsaufgabe Transaktion als Middleware

Übungsaufgabe Transaktion als Middleware Übungsaufgabe Transaktion als Middleware und Java Persistence API Client/Server Abstraktes Komponentenmodell Entscheidende Punkte Erweiterung der Invoke-Methode Context-Verwaltung Transaktionsbehandlung

Mehr

Hibernate. Objekt/Relationales Mapping für Java

Hibernate. Objekt/Relationales Mapping für Java Hibernate Objekt/Relationales Mapping für Java Wer bin ich? Stefan Wille Softwareentwickler / Architekt seit 1996 Freelancer seit 2000 Autor von Goto JavaServer Pages in 2001 Wesentliche Themen Was ist

Mehr

Die 1ste und einzige Software. die basierend auf einem Domain Model die Persistence Layer automatisch generiert

Die 1ste und einzige Software. die basierend auf einem Domain Model die Persistence Layer automatisch generiert Die 1ste und einzige Software die basierend auf einem Domain Model die Persistence Layer automatisch generiert 1. Ausgangspunkt: Welt der Informationen 2. Was ist eine Persistence Layer? 3. Aktuelle Lösungen

Mehr

Model Driven Development im Überblick

Model Driven Development im Überblick Model Driven Development im Überblick Arif Chughtai Diplom-Informatiker (FH) www.digicomp-academy, Seite 1 September 05 Inhalt Motivation Überblick MDA Kleines Beispiel Werkzeuge www.digicomp-academy,

Mehr

Komponentenbasierte Softwareentwicklung mit PHP. Oliver Schlicht - bitexpert

Komponentenbasierte Softwareentwicklung mit PHP. Oliver Schlicht - bitexpert Komponentenbasierte Softwareentwicklung mit PHP Oliver Schlicht - bitexpert Überblick 1. Was ist eine Komponente? 2. Entwicklung eines Beispieldesigns 3. Dependency Injection 4. DI Container Garden 5.

Mehr

Java und Datenbanksysteme Datenbankanbindung mit JDBC

Java und Datenbanksysteme Datenbankanbindung mit JDBC Java und Datenbanksysteme Datenbankanbindung mit JDBC 30.05.2001 Stefan Niederhauser sn@atelier-w.ch 1-Einführung Datenbanksysteme Java und Datenbanken: JDBC Geschichte der JDBC-Versionen Vergleich von

Mehr

Rechnernetze Projekt SS 2015

Rechnernetze Projekt SS 2015 30/03/15 Seite 1 Aspektorientierte Programmierung logische Aspekte (Concerns) im Programm separieren Crosscutting Concerns (Ziel: generische Funktionalitäten über mehrere Klassen hinweg zu verwenden -

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

Datenbank und Informationssysteme

Datenbank und Informationssysteme Datenbank und Informationssysteme Inhaltsverzeichnis 1 Programmierung von Datenbankzugriffen 3 1.1 Architektur des SQL/CLI am Beispiel JDBC................... 4 1.2 Anfragen und Ergebnismengen in JDBC......................

Mehr

Java Enterprise Architekturen Willkommen in der Realität

Java Enterprise Architekturen Willkommen in der Realität Java Enterprise Architekturen Willkommen in der Realität Ralf Degner (Ralf.Degner@tk-online.de), Dr. Frank Griffel (Dr.Frank.Griffel@tk-online.de) Techniker Krankenkasse Häufig werden Mehrschichtarchitekturen

Mehr

Java Persistence API 2.x. crud + relationships + jp-ql

Java Persistence API 2.x. crud + relationships + jp-ql Java Persistence API 2.x crud + relationships + jp-ql Grundprinzip 10.02.10 2 Problematik Man muss bei der Persistierung immer das Klassenmodell und dessen Umsetzung im Datenmodell (in der DB) berücksichtigen.

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher 729631 745097 736477 745011 741297 Inhalt Schlussbewertung... 3 Bewertung

Mehr

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.

Mehr

COPPER Best Practices

COPPER Best Practices COPPER Best Practices Version 1.0.1 Wann sollte man überhaupt COPPER verwenden? Allgemein genau dann, wenn man von der COPPER Notation oder den COPPER-Features profitieren kann. Ein wesentliches Feature

Mehr

20.11.2006. Einführung in Hibernate und Demonstration. Java Arbeitskreis der GTUG. Jürgen Depping CommitWork GmbH. Seite 1

20.11.2006. Einführung in Hibernate und Demonstration. Java Arbeitskreis der GTUG. Jürgen Depping CommitWork GmbH. Seite 1 Einführung in Hibernate und Demonstration Java Arbeitskreis der GTUG 20.11.2006 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Motivation OR-Mapper Hibernate ein O/R-Mapper

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - ! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1

Mehr

Code-Erzeugung aus UML-Klassendiagrammen

Code-Erzeugung aus UML-Klassendiagrammen Dominik 09.03.2009 Universität Ulm Gessenharter Inst. f. Programmiermethodik und Compilerbau Code-Erzeugung aus UML-Klassendiagrammen Theorie und Praxis Seite 2 REConf 2009 München Dominik Gessenharter

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

Mehr

OpenSource Business Strategien. Thomas Uhl Topalis AG

OpenSource Business Strategien. Thomas Uhl Topalis AG OpenSource Business Strategien Thomas Uhl Topalis AG Firmenübersicht 14.07.09 Thomas Uhl 2 Open Source ist ein alternativer Weg, bessere Software zu produzieren (Forbes Magazine) 14.07.09 Thomas Uhl 3

Mehr

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

O/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010

O/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010 O/R Mapper O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010 Agenda Object-relational impedance mismatch Mapping Session Abfragen No. 2 Object-relational impedance mismatch Object-relational

Mehr

Automatisierte Erstellung von Software-Builds und -dokumentationen. Teil 1

Automatisierte Erstellung von Software-Builds und -dokumentationen. Teil 1 Automatisierte Erstellung von Software-Builds und -dokumentationen Teil 1 Autoren: Hagedorn, Robert; Denninger, Oliver Kontakt: {hagedorn denninger}@fzi.de Web: http://zfs.fzi.de Ort, Datum: Karlsruhe,

Mehr

Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK

Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Zugriff auf Web Services vertraut. Der Web Service

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Ruby on Rails. Florian Ferrano Ralf Heller Markus Nagel

Ruby on Rails. Florian Ferrano Ralf Heller Markus Nagel Ruby on Rails Florian Ferrano Ralf Heller Markus Nagel Überblick Ruby on Rails Ruby Rails Geschichte MVC allgemein MVC in Rails Scaffolding Webserver Installation Beispiele Wo wird Rails verwendet? Ausblick

Mehr

Datenbanken (WS 2015/2016)

Datenbanken (WS 2015/2016) Datenbanken (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde

Mehr

Hibernate Search. Unterstützung laufender Java Projekte. Perfect Match Rent-a-team Coaching on the project Inhouse Outsourcing

Hibernate Search. Unterstützung laufender Java Projekte. Perfect Match Rent-a-team Coaching on the project Inhouse Outsourcing Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software Factory ) ) Object Rangers ) ) Competence Center) Schlüsselfertige

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Warum EJB Technologie (1)?

Warum EJB Technologie (1)? Datenbanken und Informationssysteme 2 SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanken und Informationssysteme 2 - Prof. Dr. Stefan Böttcher - SS 2004 Folie EJB - 1 Warum EJB Technologie

Mehr

Datenbankprogrammierung 2

Datenbankprogrammierung 2 Datenbankprogrammierung 2 JDBC Java Database Connectivity Call Level Interface Schnittstelle zwischen DBMS und Applikation JDBC API ist seit JDK1.1 inkludiert Ermöglicht Zugriff aus Java-Applikationen

Mehr

7 Datenbankabfragen. 7.1 Die Hibernate Query Language

7 Datenbankabfragen. 7.1 Die Hibernate Query Language 149 Dieses Kapitel widmet sich dem effektiven Zugriff auf Daten. Mit Datenbankabfragen können Objekte mit bestimmten Eigenschaften gesucht werden. Erst mit Abfragen ist es möglich, Objekte zu laden, deren

Mehr

Software-Engineering Grundlagen des Software-Engineering

Software-Engineering Grundlagen des Software-Engineering Software-Engineering Grundlagen des Software-Engineering 7.2 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger SWE: 7.2 Programmentwicklung und Debuggen mit IDE

Mehr

mitho -Framework für plenty PHP-Framework zur Anbindung an die plenty API

mitho -Framework für plenty PHP-Framework zur Anbindung an die plenty API PHP-Framework zur Anbindung an die plenty API Inhaltsverzeichnis 1 Kurzbeschreibung...3 2 Integration...4 3 Möglichkeiten...5 3.1 Artikel...5 3.2 Aufträge...5 3.3 Kunden...5 4 Interne Funktionsweise...7

Mehr

Testen mit JUnit. Apcon Workplace Solutions Member of itelligence. Testen von Java-Code mit JUnit. ÿstruktur eines Testfalls

Testen mit JUnit. Apcon Workplace Solutions Member of itelligence. Testen von Java-Code mit JUnit. ÿstruktur eines Testfalls Testen von Java-Code mit JUnit ÿmotivation ÿjunit-testklassen ÿjunit-testfälle ÿstruktur eines Testfalls Henning Wolf APCON Workplace Solutions GmbH wolf@jwam.de Motivation: Werkzeugunterstützung für Tests

Mehr

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de

Innovator 2007. Anbindung an openarchitectureware. Connect. Klaus Weber. www.mid.de Innovator 2007 Anbindung an openarchitectureware Klaus Weber Connect www.mid.de Anbindung an openarchitectureware (oaw) Wozu dient die Anbindung an openarchitectureware? Für Innovator Object excellence

Mehr

Invoca Systems. Application Development Framework. Systemdokumentation. Vers. 1.2.2 / 08.02.2005. copyright (c) by Invoca Systems, 4304 Giebenach

Invoca Systems. Application Development Framework. Systemdokumentation. Vers. 1.2.2 / 08.02.2005. copyright (c) by Invoca Systems, 4304 Giebenach Invoca Systems Application Development Framework Systemdokumentation Vers. 1.2.2 / 08.02.2005 Konzepte: Architektur (Backend Applicationserver Client) Java-Database Objectrelational Mapping (=> Doku) Java

Mehr

Datenbankzugriff aus Eclipse Rich-Client- Anwendungen über das Internet

Datenbankzugriff aus Eclipse Rich-Client- Anwendungen über das Internet Datenbankzugriff aus Eclipse Rich-Client- Anwendungen über das Internet Johannes Michler, PROMATIS software GmbH DOAG 2010, Nürnberg, 16. November 2010 1 Gliederung Eclipse und Eclipse RCP Komponentenframework

Mehr

Fortgeschrittenes Programmieren mit Java. Test Driven Development

Fortgeschrittenes Programmieren mit Java. Test Driven Development Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test

Mehr

Persistenz mit Hibernate

Persistenz mit Hibernate Persistenz mit Hibernate Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Orientierung in Objekten ) Akademie ) ) Beratung ) ) Projekte ) Schulungen, Coaching, Weiterbildungsberatung,

Mehr

w3lib - einfach Software entwickeln!

w3lib - einfach Software entwickeln! w3lib - einfach Software entwickeln! was ist die w3lib? Die w3lib ist ein kompletter Baukasten für die Entwicklung moderner Software. Zahlreiche Funktionen decken alles ab, was für das Internet-Business

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 22. April 2013 - MySQL Sebastian Cuy sebastian.cuy@uni-koeln.de Datenbanken Was sind eigentlich Datenbanken? Eine

Mehr

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Java Frameworks im Vergleich - ADF vs. Grails vs. Spring Frank Szilinski esentri software GmbH Karlsruhe Schlüsselworte: ADF, Java, JEE, JSF, Grails, Spring, Open Source, Rapid Application Development

Mehr

Datenbank-Refactoring mit LiquiBase

Datenbank-Refactoring mit LiquiBase Datenbank-Refactoring mit LiquiBase Agile Software-Entwicklung mit RDBMS Refactoring & Change Management Benjamin Schmid Softwareentwicklung in der Praxis Hervorragende Lösungen beim Programmcode für:

Mehr

Open Source Frameworks

Open Source Frameworks Open Source Frameworks codecentric GmbH Mirko Novakovic Agenda 1. Vorteile von Open Source 2. Framework-Kategorien 3. Open Source Frameworks 4. Empfehlungen 1 1. Vorteile von Open Source 1.1 Offenheit

Mehr

Apps Programmierung von Android-Smartphones

Apps Programmierung von Android-Smartphones Apps Programmierung von Android-Smartphones 2/14 Geplantes Tagesprogramm Vormittag: Überblick / Erwartungen Warum Android? Grundlagen ggf. gemeinsame Installation ggf. Vergleich Delphi - java ein einfaches

Mehr

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Web-Content-Management-Systeme () dienen dazu, komplexe Websites zu verwalten und den Autoren einzelner Webseiten möglichst

Mehr

Beispiel: DB-Mock (1/7)

Beispiel: DB-Mock (1/7) Beispiel: DB-Mock (1/7) Aufgabe: DB, auf die vereinfachend nur lesend zugeriffen wird mocken warum: benötigte keine DB-Lizenz, garantiert gleiche Werte ohne aufwändiges reset, kein Zeitverlust durch Verbindungsaufbau

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

Mehr

CARSTEN EMRATH. Abschluss Diplom (FH) Fach Angewandte Informatik. Sun Certified Programmer for the Java 2 Platform, Standard Edition 1.

CARSTEN EMRATH. Abschluss Diplom (FH) Fach Angewandte Informatik. Sun Certified Programmer for the Java 2 Platform, Standard Edition 1. CARSTEN EMRATH Abschluss Diplom (FH) Fach Angewandte Informatik Sun Certified Programmer for the Java 2 Platform, Standard Edition 1.4 (SCJP) Geburtsjahr 1971 Profil-Stand Januar 2016 Triona Information

Mehr

SPARC LDom Performance optimieren

SPARC LDom Performance optimieren SPARC LDom Performance optimieren Marcel Hofstetter hofstetter@jomasoft.ch http://www.jomasoftmarcel.blogspot.ch Mitgründer, Geschäftsführer, Enterprise Consultant JomaSoft GmbH 1 Inhalt Wer ist JomaSoft?

Mehr

Einführung in Eclipse und Java

Einführung in Eclipse und Java Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik

Mehr

NoSQL mit Postgres 15. Juni 2015

NoSQL mit Postgres 15. Juni 2015 Tag der Datenbanken 15. Juni 2015 Dipl.-Wirt.-Inform. Agenda l Vorstellung l Marktübersicht l Warum PostgreSQL? l Warum NoSQL? l Beispielanwendung Seite: 2 Vorstellung Dipl.-Wirt.-Inform. [1990] Erste

Mehr

Angewandte Softwareentwicklung Serialisierung

Angewandte Softwareentwicklung Serialisierung Angewandte Softwareentwicklung Serialisierung WS 2014/2015 Markus Berg Hochschule Wismar Fakultät für Ingenieurwissenschaften Bereich Elektrotechnik und Informatik markus.berg@hs-wismar.de http://mmberg.net

Mehr

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen <henning@apache.org> Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen Henning P. Schmiedehausen Turbine - ein berblick Open Source unter Apache License 100% pure Java, Java 2 (JDK 1.2+) Servlet-basiertes

Mehr

anaptecs JEAF Plattform JEAF Developer Guide

anaptecs JEAF Plattform JEAF Developer Guide anaptecs JEAF Plattform JEAF Developer Guide : JEAF Framework Die technische Grundlage für Applikationen auf Basis der JEAF Plattform bildet das JEAF Framework. Dabei handelt es sich um ein leichtgewichtiges

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II Alexander Goesmann Bioinformatics Resource Facility Center for Biotechnology Universität Bielefeld Vorlesung Sommer 2010 Überblick Datenspeicherung in relationalen Datenbanken

Mehr

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de Innovator 11 excellence DDL importieren Data-Definition-Language-Dateien in Datenbankschema importieren HowTo www.mid.de Zweck In Innovator Data excellence können Sie mit dem DDL-Import Ihr physisches

Mehr

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung

Mehr

WIRTSCHAFTSINFORMATIK

WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster A platform for professional model-driven software development. Präsentation im Rahmen des Seminars Software Engineering WS 08/09 Jan Schürmeier Jan.Schuermeier@gmx.de

Mehr

UNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme

UNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme UNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme 8. Übung zur Vorlesung Datenbanksysteme WS 08/09 Musterlösung Aufgabe 8-1: SQLJ //

Mehr

NET.Compact Framework

NET.Compact Framework FRANZIS PROFESSIONAL SERIES Robert Panther Programmieren mit dem NET.Compact Framework Pocket PC - Smartphone - Handheld Mit 178 Abbildungen FRANZIS Vorwort 9 Einleitung 11 1.1 Warum dieses Buch? 11 1.2

Mehr

Regionaltreffen Rhein Main 26. März 2007

Regionaltreffen Rhein Main 26. März 2007 Regionaltreffen Rhein Main 26. März 2007 SWE Jens Fudickar / OraTool pro Softwareentwicklung Jens Fudickar ist ein kleines Softwarehaus, dessen Hauptprodukt das OraTool ist. Darüber hinaus sind wir in

Mehr

Object Relational Mapping Layer

Object Relational Mapping Layer Object Relational Mapping Layer Views Controlers Business logic GUI OO-application logic Object-relational-Mapping Relational DBMS PHP (propel) 1/18 Propel - Persistance Layer OR-Mapper für PHP Portierung

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Live-Demo: Automatische COBOL-Java-Migration mit CoJaC

Live-Demo: Automatische COBOL-Java-Migration mit CoJaC Live-Demo: Automatische COBOL-Java-Migration mit CoJaC Christian Becker pro et con Innovative Informatikanwendungen GmbH Fachtagung "SOFTWARE-MIGRATION aktuell" 03.-04. April 2014, Chemnitz Agenda 1 Überblick

Mehr

Performance Tuning mit @enterprise

Performance Tuning mit @enterprise @enterprise Kunden-Forum 2005 Performance Tuning mit @enterprise Herbert Groiss Groiss Informatics GmbH, 2005 Inhalt Datenbank RMI JAVA API HTTP Konfiguration Analyse Groiss Informatics GmbH, 2005 2 Datenbank

Mehr

Konfigurieren statt Programmieren: Data Driven Java Development

Konfigurieren statt Programmieren: Data Driven Java Development Konfigurieren statt Programmieren: Data Driven Java Development Thomas Haskes Triestram & Partner GmbH Bochum Schlüsselworte rapid.java, Data Driven Java Development, UI-Konfiguration, Eclipse, SWT, Oracle,

Mehr