3 Hibernate ein einfaches Beispiel

Größe: px
Ab Seite anzeigen:

Download "3 Hibernate ein einfaches Beispiel"

Transkript

1 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 werden können. Wir konzentrieren uns (natürlich) auf die Fachlogik und Datenhaltung und betrachten die Benutzungsoberfläche allenfalls am Rande. Als Datenbank verwenden wir in diesem Kapitel die H2. H2 lässt sich ganz einfach installieren und konfigurieren. Außerdem erlaubt sie den Betrieb der Datenbank im Hauptspeicher (In-Memory-DB) ohne Sicherung auf der Festplatte. Sie ist daher zum Testen und Ausprobieren sehr gut geeignet. 3.1 Installation von Hibernate und H2 Hibernate ist ein Open-Source-Produkt. Es kann also ohne Zahlungsverpflichtungen verwendet werden. Außerdem ist der Quellcode öffentlich. Das ist insbesondere dann sehr nützlich, wenn man der genauen Funktionsweise von Hibernate auf den Grund gehen will oder muss. Hibernate kann von der Hibernate-Homepage heruntergeladen werden. Hier sind immer mehrere Versionen verfügbar ältere, aktuelle und solche, die zurzeit noch entwickelt werden. Wir verwenden in diesem Buch Hibernate 3 und laden deshalb das aktuelle Hibernate-Release der Version 3 oder höher herunter. Hibernate wird in einem gepackten Format angeboten (zip oder tar.gz sind verfügbar). Diese Archive enthalten neben den für die Entwicklung mit Hibernate benötigten Bibliotheken im Java-typischen JAR-Format auch den Quellcode und die Dokumentation zu Hibernate. Wir entpacken Hibernate in ein eigenes Verzeichnis z.b. c:\programme\hibernate, um es nicht mit unseren jeweiligen Projekten zu vermischen. Hibernate

2 36 Verzeichnisstruktur der Hibernate-Installation Hiernach sind folgende Unterverzeichnisse im Zielverzeichnis zu finden Verzeichnisse in der Hibernate-Installation Verzeichnis bin doc eg etc grammar lib src test Inhalt Enthält Startskripte für die Hibernate-Werkzeuge zum Exportieren und Aktualisieren von Datenbankschemata. Enthält die Dokumentation zu Hibernate. Hier befinden sich die API-Dokumentation im JavaDoc-HTML-Format und die offizielle Hibernate-Referenz im HTML- und PDF-Format. Enthält ein einfaches Beispiel zur Verwendung von Hibernate. Enthält Beispiele zur Konfiguration verschiedener Datenbanken in Hibernate, zum Deployment von Hibernate in JBoss und zum Konfigurieren der unterstützten Caches in Hibernate. Enthält Grammatiken im ANTLR a -Format, welche die Hibernate Query Language (kurz HQL; siehe hierzu Kapitel 7), SQL und die Transformation von HQL zu SQL beschreiben. Enthält eine Reihe von Bibliotheken für den Einsatz von Hibernate in verschiedenen Kontexten. Wir werden jeweils einen Teil dieser Bibliotheken verwenden und immer explizit machen, welche dieser Bibliotheken für das Nachvollziehen der einzelnen Beispiele notwendig sind. Enthält den Hibernate-Quellcode. Der Quellcode ist interessant bei der Fehlersuche und erleichtert die Arbeit mit dem Rahmenwerk in einer Entwicklungsumgebung, da diese dann zu den Signaturen der Methoden auch die Namen der Parameter anzeigen kann. Außerdem ist der Quellcode interessant, wenn wir herausfinden wollen, wie bestimmte Aspekte von Hibernate implementiert sind. Enthält die JUnit b -Testklassen für Hibernate. Die Testklassen eines Rahmenwerkes können häufig aufzeigen, wie die Entwickler sich dessen Verwendung vorgestellt haben. a. ANTLR (kurz für Another Tool for Language Recognition) ist ein Werkzeug zum Erzeugen von Parsern. Für die Verwendung von Hibernate und somit auch für die Lektüre dieses Buches ist ein vertieftes Verständnis dieses Gebiets nicht notwendig. b. JUnit ist eine Bibliothek, welche die Entwicklung automatisch ablaufender Tests unterstützt. Für eine Einführung ins Testen mit JUnit empfehlen wir das Buch»Software-Tests mit JUnit«von Johannes Link (siehe [Link05]). H2 Hibernate kann mit allen gängigen Datenbanken verwendet werden (MySQL, Postgres, Oracle und DB2 seien hier als Beispiele genannt). In den Beispielen für dieses Buch verwenden wir die H2 1, die von heruntergeladen werden kann. Die H2 ist eine einfache, in Java implementierte Datenbank. Sie eignet sich sehr gut zum Entwickeln von Prototypen, da ihre Konfiguration unkompliziert ist und sie schnell gestartet und gestoppt werden kann. Auch die

3 3.2 Vorbereitung der Entwicklungsumgebung 37 H2 sollte in einem eigenen Verzeichnis z.b. c:\programme\h2 installiert werden. Das H2-Archiv enthält folgende Verzeichnisse: Verzeichnisse in der H2-Installation Verzeichnis bin docs odbc Inhalt Enthält das h2.jar, das die Datenbank und den JDBC-Treiber enthält. Außerdem ist hier ein Startskript zm Ausführen der H2 unter Windows enthalten. Enthält die API-Dokumentation im JavaDoc-HTML-Format und das H2-Handbuch im PDF- und HTML-Format. Enthält ODBC-Treiber für die H2. Diese sind für uns irrelevant. src Enthält den Quellcode der H2. Verzeichnisstruktur der H2-Installation 3.2 Vorbereitung der Entwicklungsumgebung In diesem Abschnitt zeigen wir, wie die Entwicklungsumgebung für die Entwicklung einer Hibernate-Anwendung vorbereitet werden soll. Wir gehen davon aus, dass der Leser weiß, wie ein Projekt in seiner Entwicklungsumgebung angelegt wird Die Auswahl der richtigen Bibliotheken Die Masse der Bibliotheken, die mit Hibernate geliefert werden, ist auf den ersten Blick überwältigend. Man könnte einfach alle mitgelieferten Bibliotheken in das Projekt einbinden. Das verlangsamt die Entwicklungsumgebung aber nur unnötig und vergrößert den Umfang des auszuliefernden Installationspakets. Letzteres stört spätestens, wenn die Anwendung in den Produktivbetrieb geht. Wir werden im Verlauf dieses Buches verschiedene Varianten unseres Terminplaner-Beispiels entwickeln, die zum Teil unterschiedliche Bibliotheken benötigen. Wir werden dann jeweils klarmachen, welche Bibliotheken erforderlich sind. Für den Einstieg benötigen wir die folgenden Bibliotheken: 1. In der ersten Auflage dieses Buches verwendeten wir die HSQLDB. Die H2 ist zur HSQLDB ähnlich, bietet jedoch einige zusätzliche Features. Bei der Verwendung der HSQLDB mit Hibernate kann es vorkommen, dass Daten nach dem Beenden der Anwendung nicht gesichert werden. Dieses Problem tritt mit der H2 nicht auf.

4 38 Benötigte Bibliotheken für das erste Beispiel JAR-Datei a Beschreibung h2.jar Die H2. Dieses JAR befindet sich in der H2- Installation. hibernate3.jar cglib-x.jar asm.jar, asm-attrs.jar ehcache-x.jar commons-logging-x.jar jta.jar log4j-x.jar commons-collections-x.jar jdbc2_0-sdtext.jar antlr-x.jar dom4j-x.jar, xml-apis.jar, xerces-x.jar Diese Bibliothek enthält alle Hibernate-Klassen. Im Gegensatz zu anderen OR-Mapping-Lösungen wie zum Beispiel JDO verändert Hibernate nicht den Quelltext oder die kompilierten Klassen, sondern erzeugt zur Laufzeit dynamische Proxys. Diese Proxys werden mit der CGLib erzeugt. Bibliothek zum Verändern des Bytecodes von Klassen. Diese Bibliothek wird von der CGLib verwendet. Hibernate verwendet einen Caching-Mechanismus für bereits in einer Session bekannte persistente Objekte. Hibernate kann mit mehreren Caching-Bibliotheken zusammenarbeiten. EHCache ist eine davon. Ein Wrapper um Log4J und andere Logging- Lösungen unter Java, der von EHCache verwendet wird. Die Standard-Java-Transaktions-API wird von Hibernate intern zum Verwalten von Transaktionen verwendet. Hibernate verwendet Log4J für alle Debug- und Fehlermeldungen. Eine Bibliothek mit zusätzlichen Collection- Klassen. Erweiterungen zu JDBC2, die von Hibernate vewendet werden. ANTLR wird von Hibernate zum Parsen von HQL-Ausdrücken verwendet. Einige XML-Bibliotheken, die von Hibernate zum Lesen der Konfigurations- und Mapping- Dateien verwendet werden. Wird Hibernate mit dem JDK 5.0 oder einer neueren Version verwendet, so ist nur das dom4j-x.jar notwendig. Die anderen beiden sind bereits in den neueren Versionen des JDKs enthalten.

5 3.2 Vorbereitung der Entwicklungsumgebung 39 Benötigte Bibliotheken für das erste Beispiel JAR-Datei a Beschreibung junit.jar Wir werden Unit-Tests schreiben. Dafür benötigen wir JUnit, das von der JUnit-Website ( heruntergeladen werden kann. Einige Entwicklungsumgebungen wie zum Beispiel Eclipse bieten an, JUnit in das Projekt einzubinden, sobald die erste Testklasse geschrieben wird. Hier muss JUnit dann nicht extra heruntergeladen werden. a. Das X in einigen JAR-Namen steht für die Versionsnummer der jeweiligen Bibliothek. Diese ändert sich für einige Bibliotheken von einer Hibernate-Version zur nächsten Installation der Plugins für den Zugriff auf die Datenbank Bei der Arbeit mit einer Datenbank ist es manchmal notwendig, sich deren aktuellen Inhalt anzusehen. Bei der Verwendung einer OR-Mapping-Lösung ist das sogar noch wichtiger, als wenn die Datenbank direkt über JDBC verwendet wird. Häufig kann man nur aus den tatsächlichen Tabellen und ihren Inhalten erschließen, warum etwas nicht oder nicht so wie erwartet funktioniert. Es gibt viele alleinstehende Werkzeuge zum Arbeiten mit Datenbanken. Die H2 selbst wird mit einer H2-Console ausgeliefert. Komfortabler und schneller ist der Zugriff auf die Datenbank, wenn dieses Werkzeug in die Entwicklungsumgebung integriert ist. Für die Entwicklungsumgebung IntelliJIDEA ist das SQLQuery- Plugin ein solches integriertes Werkzeug, das sich mit der Datenbank verbindet und das Ausführen von SQL-Befehlen auf dieser Datenbank erlaubt. SQLQuery kann über den in IDEA integrierten Plugin-Manager installiert werden. Nach der Installation muss dem SQLQuery-Plugin der H2-Treiber bekannt gemacht werden. Dazu öffnet man das Tool-Window»SQL«und klickt auf das Werkzeug-Icon. In dem erscheinenden Fenster muss nun unter dem Reiter»Miscellaneous«über den Knopf»Add Jar/Directory«das h2.jar in die Liste der JDBC-Treiber aufgenommen werden. Für Eclipse gibt es mehrere dem SQLQuery entsprechende Plugins. Wir empfehlen den SQLExplorer, der den ausgereiftesten Eindruck macht. Dieses Plugin muss von der SQLExplorer-Website ( heruntergeladen und manuell in das Eclipse-Hauptverzeichnis entpackt werden. In der Eclipse Konfiguration (Preferences im Menü Window) steht nun ein neuer Knoten»SQL Explorer«im Baum der Konfigurationsbereiche zur Verfügung. Für uns ist jetzt der Subknoten»JDBC Drivers«Direkte Sicht auf die Datenbank SQLQuery für IntelliJ IDEA SQLExplorer für Eclipse

6 40 interessant. Hier ist eine Liste von vorkonfigurierten Treibern zu sehen. Da der SQLExplorer nur die Konfiguration der Treiber ohne die dafür benötigten Treiber enthält, ist jede dieser Konfigurationen als fehlerhaft markiert. Sie muss um den jeweiligen Treiber ergänzt werden. Für die H2 ist hier noch keine Vorkonfigurierung zu sehen. Wir müssen sie also anlegen. Dazu muss auf den Knopf»Add«neben der Treiberliste geklickt werden. In dem nun erscheinenden Fenster (siehe Abb. 3 1) muss zunächst ein Name für die Konfiguration vergeben und eine Beispiel-URL für den Zugriff auf die Datenbank angegeben werden. Danch muss unter dem Reiter»Extra Class Path«durch einen Klick auf»add«das JAR in den Classpath der Konfiguration eingefügt werden. Über einen Klick auf»list Drivers«wird SQLExplorer angewiesen, nach allen JDBC-Treibern in dem JAR zu suchen. Ein Klick auf»ok«schließt die Konfiguration ab. Abb. 3 1 Konfiguration eines Treibers für SQLExplorer Soll eine der bereits vorbereiteten Konfigurationen verwendet werden zum Beispiel»MySQL Driver«, muss dieser in der Liste markiert und durch einen Klick auf den Knopf»Edit«für die Bearbeitung geöffnet werden. Hier muss dann wie bei der Konfiguration der H2 auf dem Reiter»Extra Class Path«das JAR mit dem entsprechenden Treiber angegeben werden.

7 3.3 Ein erstes Beispiel mit Hibernate Ein erstes Beispiel mit Hibernate Nachdem die Entwicklungsumgebung eingerichtet ist, wollen wir unsere ersten Schritte mit Hibernate wagen. Wir beginnen mit einer zentralen Klasse für unseren Terminplaner dem Termin. package net.sf.hibernatesample.einfach; import java.util.date; public class Termin { private long _id; private String _titel; private String _beschreibung; private String _ort; private Date _zeitpunkt; public String gettitel () { return _titel; public void settitel (String titel) { _titel = titel; Die Klasse Termin folgt in ihrem Aufbau der JavaBeans-Spezifikation. Zu jedem Attribut 2 gibt es eine Setter genannte Methode, mit der das Attribut gesetzt werden kann, und eine andere, Getter genannte, mit der es gelesen werden kann. Setter beginnen immer mit dem Präfix»set«und Getter mit dem Präfix»get«oder für boolesche Attribute»is«. Dem Präfix folgt immer der Name des Attributs, womit der Name des Setters bzw. Getters auch vollständig ist. In der oben gezeigten gekürzten Version der Termin-Klasse sind exemplarisch ein Getter und ein Setter für das Attribut titel zu sehen. Der JavaBeans-Attributname hier»titel«muss dabei nicht unbedingt mit dem Namen des zugehörigen Attributs in der Klasse übereinstimmen. Er leitet sich alleine aus der Benennung der Zugriffsmethoden ab. Klassen, deren Exemplare mit Hibernate persistent gemacht werden sollen, müssen den beschriebenen Aspekt der JavaBeans-Spezifikation erfüllen. Die Zugriffsmethoden müssen jedoch nicht public sein. Hibernate wird sie auch dann verwenden können, wenn sie private sind. Termin.java (gekürzte Version) JavaBeans-Attribute Code-Konventionen 2. Wir benennen die Attribute einer Klasse nicht nach den von Sun festgelegten Code-Konventionen, sondern lassen Attributnamen immer mit einem Unterstrich anfangen. Das erleichtert die Unterscheidung zwischen Attributen und lokalen Variablen beim Lesen und Bearbeiten des Codes.

8 42 Achtung Auch wenn es Hibernate beim Setzen und Lesen der Attribute nicht stört, wenn die Methoden private sind, sollte auf private Methoden verzichtet werden. In einigen Situationen erzeugt Hibernate Proxys um die Geschäftsobjekte. Diese sind wichtig für Hibernates Nachlademechanismus. Bei der Erzeugung eines Proxys wird dynamisch eine Subklasse der Klasse des Geschäftsobjektes erzeugt und jede überschreibbare Methode überschrieben. Hibernate kann dann darauf reagieren, wenn zum ersten Mal auf ein Objekt zugegriffen wird, und erst dann das Objekt aus der Datenbank laden. private Methoden und Methoden, die final sind, können nicht überschrieben werden. Wird eine solche Methode von außerhalb des Geschäftsobjektes aufgerufen, bekommt es der Proxy nicht mit, und Hibernate lädt das Objekt nicht nach. private Methoden werden zum Beispiel häufig verwendet, um einen Kopier-Konstruktor zu schreiben, der eine Kopie des übergebenen Objektes erzeugt. Da Objekte der gleichen Klasse auf private Methoden des jeweils anderen zugreifen können, ist also ein Zugriff auf private Methoden von außen möglich und sorgt in diesem Fall für schwer auffindbare Fehler Konfiguration Bevor wir mit dem Programmieren des Hibernate-spezifischen Teils unseres Beispiels beginnen, müssen wir einige Konfigurationsdateien erstellen, die zur Laufzeit gelesen werden, und Hibernate zum Beispiel mitteilen, wie eine Klasse auf Datenbanktabellen abzubilden ist. Die Mapping-Datei Zu jeder persistierbaren Klasse muss es eine Hibernate-Mapping- Beschreibung geben. Es hat sich eingebürgert, für jede dieser Klassen eine eigene Mapping-Datei mit der Endung»hbm.xml«zu erstellen, die im gleichen Package platziert wird wie die Klasse selbst. Für die Termin-Klasse sieht eine mögliche Beschreibung wie folgt aus: Termin.hbm.xml <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" " <hibernate-mapping package="net.sf.hibernatesample.einfach"> <class name="termin"> <id name="id"> <generator class="native"/> </id>

9 3.3 Ein erstes Beispiel mit Hibernate 43 <property name="titel"/> <property name="beschreibung"/> <property name="zeitpunkt"/> <property name="ort"/> </class> </hibernate-mapping> Im Vorspann der Datei wird definiert, in welcher DTD das Format der Datei beschrieben ist. Wenn ein XML-Editor verwendet wird, ist das Erstellen der Datei sehr einfach, weil der Editor über die DTD eine Autovervollständigungsfunktionalität anbieten kann. Im Tag hibernate-mapping wird das OR-Mapping für das angegebene Package definiert. Es ist also möglich, in einer Mapping-Datei das Mapping für alle persistierbaren Klassen eines Packages festzulegen. Ebenso ist es möglich, das Mapping eines Packages in beliebig viele Dateien aufzuteilen. Über das class-tag wird das Mapping für eine Klasse definiert. Die property-tags definieren, welche Attribute der Klasse persistent sein sollen. In der hier verwendeten einfachen Form gibt es für jedes Attribut ein property-tag, das den JavaBeans-Attributnamen in seinem name-attribut angibt. Hibernate ermittelt bei dieser Variante selbst den Typ des Attributs und wählt eigenständig den Namen der Datenbank- Tabellenspalte für das Attribut. Das id-tag ist ein spezielles property-tag. Es definiert, dass das Attribut id persistent sein soll und dass es außerdem der Primärschlüssel für die entsprechenden Datensätze in der Datenbank sein soll. In Hibernate gibt es mehrere verfügbare Strategien für das Erzeugen von IDs, und eigene können ebenfalls implementiert werden. Die Variante native ist die einfachste Variante. Hibernate wählt bei dieser Einstellung selbst eine ID-Erzeugungsstrategie, die den Fähigkeiten der Datenbank entspricht. Mapping einer Klasse Primärschlüssel Konfiguration von Hibernate Damit haben wir unsere erste persistierbare Klasse geschrieben und Hibernate verraten, wie ihre Exemplare persistiert werden sollen. Hibernate weiß jetzt aber noch nicht, welche Datenbank verwendet werden soll, und ebenso wenig ist Hibernate bekannt, wo die Mapping-Datei liegt. Die Mapping-Datei wird zwar für gewöhnlich in das Package der Klasse platziert, aber das ist kein Muss, und Hibernate macht hier keine Annahmen.

10 44 Hier kommt die Hibernate-Konfiguration ins Spiel: <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" " 3.0.dtd"> <hibernate-configuration> <session-factory> <property name="dialect"> org.hibernate.dialect.h2dialect </property> <property name="connection.driver_class"> org.h2.driver </property> <property name="connection.username"> sa </property> <property name="connection.password"> </property> <property name="connection.url"> jdbc:h2:file:db/termine </property> <mapping resource= "net/sf/hibernatesample/einfach/termin.hbm.xml" /> </session-factory> </hibernate-configuration> SQL-Dialekt Ort der Mapping-Dateien Die hier gezeigte Konfiguration legt fest, dass der H2-SQL-Dialekt verwendet werden soll. Zwar ist SQL standardisiert, aber jeder Datenbankhersteller reichert das von seiner Datenbank verstandene SQL um eigene Erweiterungen an. An Stellen, wo die SQL-Spezifikation nicht eindeutig ist und Freiräume für eigene Interpretationen bietet, kann sich die Reaktion zweier Datenbanken auf denselben SQL-Befehl unterscheiden. Außerdem gibt es für viele Datenbanken bewährte Arten, etwas zu erledigen, die zu einer performanteren Ausführung führen. Hibernate lässt sich durch die Auswahl eines speziellen Dialekts auf eine Datenbank optimieren. Mit dem Tag mapping wird angegeben, wo Hibernate eine Mapping-Datei findet. Für jede im System existierende Mapping-Datei muss es ein solches Tag geben. Das Attribut resource gibt den Ort der Mapping-Datei über einen zum Classpath relativen Pfad an. Es ist also praktisch auch möglich, die Mapping-Dateien außerhalb der Packages an einem anderen im Classpath eingebundenen Ort zu halten. Der Rest der Konfiguration beschreibt den zu verwendenden Treiber, den Benutzer und die einzusetzende Datenbank.

11 3.3 Ein erstes Beispiel mit Hibernate 45 Wie»scott«und»tiger«bei Oracle sind»sa«und»«bei der H2 der Default-Benutzer und sein Passwort. Tipp Der für uns interessantere Teil der Datenbankkonfiguration ist»connection.url«. Die H2 kann auf drei Arten gestartet werden: Server: Der gängige Modus, der auch von anderen Datenbanken her bekannt ist. Der Datenbankserver wird explizit gestartet und horcht auf einem Port auf Anfragen. Embedded: Der H2-Treiber startet die Datenbank eigenständig beim ersten SQL-Befehl, der eingeht. Es handelt sich dann um eine In-Process-Datenbank, die in derselben VM läuft wie der Aufrufer und die von außen nicht ansprechbar ist. In-Memory: Eine andere In-Process-Variante, bei der die Datenbank nur im Hauptspeicher erzeugt und verändert wird. Sobald die VM beendet ist, sind auch alle Daten verloren, die in der Datenbank abgelegt wurden. Dieser Modus ist vor allem für Tests sinnvoll. Wir werden die H2 zunächst nur in den beiden In-Process-Varianten verwenden, da das Starten und Stoppen praktisch von selbst geht und somit kein Verwaltungsaufwand anfällt. Die in der Konfiguration angegebene connection.url gibt eine Embedded-Datenbank an. Bei einer Embedded-Datenbank muss nur angegeben werden, in welchem Verzeichnis die Datenbank liegen und welchen Namen sie haben soll. Wir verwenden das Verzeichnis db, das sich im Projektverzeichnis befindet, und die Datenbank nennen wir termine. Es ist sinnvoll, für die Datenbank ein eigenes Verzeichnis zu wählen, da diese aus mehreren Dateien besteht und somit die Vermischung mit anderen Projektdateien verhindert wird. Wir platzieren die Konfigurationsdatei im Hauptverzeichnis des Quellcodes einer Anwendung. Beim Kompilieren der Anwendung wird die Konfigurationsdatei von der Entwicklungsumgebung in das Verzeichnis mit den class-dateien kopiert und ist dann auf der obersten Ebene des Classpaths verfügbar, wo sie von Hibernate gesucht und gefunden wird. Drei Arten, die H2 zu starten Konfiguration einer Embedded-H2 Platzierung der Konfigurationsdatei Log4J-Konfiguration Hibernate verwendet für Debug- und für alle anderen Meldungen log4j. Damit diese Meldungen auf der Konsole zu sehen sind, muss log4j entsprechend konfiguriert werden.

12 46 log4j sucht beim Starten nach einer Datei log4j.properties auf der obersten Ebene des Classpaths. Wir erstellen die folgende Datei also auch im Hauptverzeichnis des Quellcodes. log4j.rootlogger=debug, A1 log4j.appender.a1=org.apache.log4j.consoleappender log4j.appender.a1.layout=org.apache.log4j.patternlayout log4j.appender.a1.layout.conversionpattern=\ %-4r [%t] %-5p %c %x - %m%n Achtung Wenn die Zeichenketten nach den Gleichheitszeichen in derselben Zeile stehen wie die Gleichheitszeichen, muss das»\«, das sich hinter diesen befindet, entfernt werden Das Beispiel eine Testklasse für die Grundoperationen von Hibernate Nun ist es Zeit, den ersten Code zu schreiben, der Hibernate aktiv benutzt. Wir werden eine JUnit-Testklasse schreiben, die einige Grundoperationen bei der Arbeit mit Datenbanken testet. Diese Operationen werden häufig unter dem Kürzel»CRUD«für»Create«,»Read«,»Update«und»Delete«zusammengefasst. setup Vorbereitung von Hibernate und Datenbank für den Test Am Anfang gibt es für jede Anwendung, die Hibernate verwendet, einige Schritte, die durchlaufen werden müssen. Dazu gehört zum Beispiel das Konfigurieren von Hibernate. Diese Schritte fassen wir in der setup-methode der Testklasse zusammen. private static final String ORT = "Hamburg"; private static final String BESCHREIBUNG = "termin"; private static final String TITEL = "titel"; private static final Date ZEIT_PUNKT = new Date(System.currentTimeMillis() ); protected void setup () throws Exception { super.setup(); Configuration configuration = new Configuration().configure(); SchemaExport export = new SchemaExport(configuration); export.create(false, true); _sessionfactory = configuration.buildsessionfactory(); _id = erzeugetermin(titel,beschreibung, ORT, ZEIT_PUNKT);

13 3.3 Ein erstes Beispiel mit Hibernate 47 Zuerst wird eine Hibernate-Konfiguration erzeugt und mit dem Inhalt der Konfigurationsdatei gefüllt. Hibernate sucht die Konfigurationsdatei auf der obersten Ebene des Classpaths. Es genügt nicht, die Configuration zu erzeugen. Sie muss explizit mit configure() gefüllt werden. configure() darf nur genau einmal aufgerufen werden. Wird configure() mehr als einmal aufgerufen, liest Hibernate die Konfigurationsdatei erneut ein. Dabei werden auch alle Mappings neu eingelesen, was dazu führt, dass Hibernate sich über doppelte Mappings beklagt. Achtung Der SchemaExport erzeugt die Tabellenstruktur in der Datenbank. Ein praktischer Nebeneffekt für das Testen ist, dass davor die Datenbank gelöscht wird. Man muss hier also nicht selbst dafür sorgen, dass jeder Test eine saubere Datenbank vorfindet. In den log4j-debug-meldungen gibt Hibernate aus, wie es die Tabelle erzeugt. Erzeugung des Datenbankschemas create table Termin ( id bigint generated by default as identity (start with 1), titel varchar(255), beschreibung varchar(255), zeitpunkt timestamp, ort varchar(255), primary key (id) ) Die id wird also von der Datenbank generiert und ist als primary key eingetragen, zeitpunkt wurde richtig auf timestamp und nicht date abgebildet, was den Uhrzeitanteil am Date-Objekt erhält. Die Strings wurden pauschal auf varchar(255) abgebildet. Hier wird man bei einer späteren Optimierung für titel und ort wahrscheinlich kleinere varchars nehmen, während 255 Zeichen für eine Beschreibung zu knapp bemessen sein könnten. Unser erstes Mapping der Termin-Klasse lässt vieles offen, und Hibernate füllt die Lücken mit brauchbaren Werten. Das nächste Kapitel wird sich näher damit befassen, wie Mappings genauer spezifiziert werden können. Zum Abschluss lässt setup die Configuration eine SessionFactory erzeugen. Die SessionFactory wird als Fabrik für die im Folgenden benötigten Sessions verwendet. Zuletzt wird ein Termin erzeugt.

14 48 Erzeugung eines persistenten Objektes Die Erzeugung eines Termins ist in eine eigene Methode ausgelagert, die in den Tests verwendet werden kann, wenn ein neuer Termin benötigt wird. private long erzeugetermin (String titel, String beschreibung, String ort, Date zeitpunkt) { Termin termin = new Termin(); termin.settitel(titel); termin.setbeschreibung(beschreibung); termin.setort(ort); termin.setzeitpunkt(zeitpunkt); Session session = null; Transaction transaction = null; try { session = _sessionfactory.opensession(); transaction = session.begintransaction(); session.save(termin); transaction.commit(); catch (HibernateException e) { if (transaction!= null) { transaction.rollback(); throw e; finally { if (session!= null) { session.close(); return termin.getid(); Bezug von der Hibernate- Session und -Transaktion zu SQL Das Anlegen des Termins selbst ist unspektakulär und funktioniert so, wie man es von allen anderen Java-Objekten her auch kennt. Der spannendere Bereich fängt mit dem Öffnen der Hibernate-Session an. Hierzu wird die SessionFactory verwendet, die wir im setup erzeugt haben. An der Session wird dann eine Hibernate-Transaktion begonnen. Eine Hibernate-Transaktion ist eng mit der dahinter liegenden Datenbanktransaktion gekoppelt und funktioniert prinzipiell genauso. Was bei einer Datenbanktransaktion und der Verwendung von SQL ein INSERT wäre, ist hier das session.save(). Eine Hibernate-Transaktion wird im Erfolgsfall wie eine Datenbanktransaktion mit commit() abgeschlossen beziehungsweise mit rollback() rückgängig gemacht, wenn Probleme aufgetreten sind.

15 3.3 Ein erstes Beispiel mit Hibernate 49 Wir schließen die Session nach der Erzeugung eines jeden Termins. Das ist jedoch keine Notwendigkeit, und häufig werden in realen Anwendungen mehrere Transaktionen mit derselben Session durchgeführt. Wird eine Session über mehrere Transaktionen verwendet, so kommt der Cache der Session zum Einsatz. Das ist aus Performance- Gründen sinnvoll. Bei unseren Tests ist der Cache jedoch teilweise nachteilig und kann dazu führen, dass Tests in einer Gruppe (Test- Suite) erfolgreich durchlaufen, die einzeln also mit unterschiedlichen Sessions nicht durchlaufen. Wir schließen die Session, um sicher zu sein, dass ein erzeugter Termin beim nächsten Laden wirklich aus der Datenbank und nicht aus dem Cache geladen wird. Caching in einer Hibernate-Session Laden eines persistenten Objektes Nun wollen wir überprüfen, ob es funktioniert, einen zuvor in der Datenbank gespeicherten Termin dort wieder herauszuladen. public void testload () { Session session = null; try { session = _sessionfactory.opensession(); Termin termin = (Termin) session.load(termin.class, _id); assertequals(zeit_punkt, termin.getzeitpunkt()); assertequals(titel, termin.gettitel()); assertequals(beschreibung, termin.getbeschreibung()); assertequals(ort, termin.getort()); finally { if (session!= null && session.isconnected()) { session.close(); Der Termin wurde bereits im setup(), das vor jeder Testmethode ausgeführt wird, erzeugt. Hier bleibt uns also nur übrig, den zuvor erzeugten Termin zu laden, was über den Aufruf der Methode load() bewerkstelligt wird. Diese Methode bekommt die Klasse des Objekts, das geladen werden soll, und seine ID übergeben. Das Autoboxing 3 -Feature des JDK 5.0 erlaubt uns, die ID hier einfach hinzuschreiben. Die ID wird von der VM automatisch in einen Long-Wrapper verpackt und an die Methode übergeben. Um diesen Code im JDK 1.4 oder einer älteren Version kompilieren zu können, muss man diese Umverpackung explizit vornehmen. Der Test überprüft hierauf, ob der geladene Termin die richtigen Attribute enthält.

16 50 Überprüfung der Datenbank Vorgehen beim SQLQuery-Plugin Nach diesem Test bietet sich eine gute Gelegenheit an, mit einem der beiden Plugins auf die Datenbank zu sehen und zu überprüfen, dass die Datenbank wirklich den Termin enthält. Im SQLQuery-Plugin klickt man auf das Werkzeug-Symbol auf der rechten Seite und erzeugt unter dem Reiter»Connections«eine neue Verbindung. Als Treibertyp nehmen wir»other Driver«, weil es keine spezielle Konfiguration für die H2 gibt. Für Class geben wir»org.h2.driver«und für URL die URL unserer Datenbank ein, also zum Beispiel jdbc:h2:file://g:/projekte/hibernate/db/termine (Abb. 3 2 zeigt die Konfiguration des Plugins). Abb. 3 2 Konfiguration von SQL-Query 3. In Java wird zwischen Werten primitiver Typen wie int und float und Objekten unterschieden. Diese Unterscheidung ist hinderlich, wenn man diese Werte an Stellen verwenden will, wo nur Objekte zulässig sind zum Beispiel als Elemente einer ArrayList. Für diese Situationen enthält Java Klassen, welche die primitiven Typen kapseln (z.b. Integer für int, Float für float). Es hat sich jedoch als sehr lästig herausgestellt, die Konvertierung von einem Wert zum entsprechenden Objekt und wieder zurück immer selbst vornehmen zu müssen. Das Autoboxing genannte Feature des JDK 5 macht diese Konvertierung nun selbstständig, sobald ein Wert an einer Stelle verwendet wird, an der ein Objekt erwartet wird. Auch umgekehrt kann ein Objekt von zum Beispiel Integer einer int-variablen zugewiesen werden. Autoboxing übernimmt automatisch die Konvertierung.

17 3.3 Ein erstes Beispiel mit Hibernate 51 Im oberen Teil des Plugin-Bereichs können SQL-Befehle eingegeben und über einen Klick auf das grüne Icon ausgeführt werden. Der untere Bereich zeigt das Ergebnis der ausgeführten Befehle. Abbildung 3 3 zeigt das Plugin nach der Ausführung einer SQL- Anfrage. Abb. 3 3 SQL-Query in Aktion In der SQLExplorer-Perspektive gibt es oben links eine View»Connections«, in der alle dem Plugin bekannten Datenbanken aufgelistet sind. Zurzeit kennt das Plugin keine Datenbanken. Um unsere H2-Termindatenbank anzumelden, klicken wir mit der rechten Maustaste in dieses View und wählen»new Connection Profile«aus dem erscheinenden Menü aus. In dem nun sichtbaren Fenster wählen wir in der Driver-Combobox unseren zuvor konfigurierten H2-Treiber aus. Im URL-Feld geben wir wie schon für SQLQuery die URL der Datenbank ein (siehe Abb. 3 4). Hiernach muss durch einen Doppelklick auf den Datenbanknamen in der Liste eine Verbindung mit der Datenbank erzeugt werden. Nun können wir auf die Datenbank mit der rechten Maustaste klicken und in dem erscheinenden Kontextmenü»New Vorgehen beim SQLExplorer Abb. 3 4 Anmelden einer Datenbank im SQLExplorer

18 52 SQL Editor«auswählen. Das öffnet einen Editor, in dem SQL-Befehle eingegeben werden können. Ein Klick auf das schwarze Läufer-Icon führt diese Befehle aus (siehe Abb. 3 5). Abb. 3 5 Ergebnis der Anfrage Anzeigen aller Termine Wir sehen uns zunächst an, welche Termine in der Datenbank vorhanden sind. select * from termin Wie erwartet, enthält die Datenbank einen Termin. Abbildung 3 5 zeigt das Ergebnis dieser Anfrage im SQLExplorer. Das Ausführen dieses Befehls führt zur Anzeige aller Daten in der Tabelle der Termine. Diese Tabelle enthält jetzt einen Datensatz. Tipp In der ersten Auflage dieses Buches haben wir an dieser Stelle erklärt, dass die HSQLDB mit dem shutdown-befehl vor dem Starten eines neuen Tests geschlossen werden muss. Das ist mit der H2 nicht mehr notwendig, weil diese sich automatisch beendet, sobald keine aktive Verbindung mehr besteht. Umschalten der H2 in den In-Memory-Modus Für die automatisch ablaufenden Tests benötigen wir eigentlich keine Datenbank, die hinterher noch persistent sein muss. Die In-Memory- Variante der H2 eignet sich viel besser für Tests. Sie wird nicht auf die Festplatte gespeichert, und die Datenbankzugriffe werden viel schneller ausgeführt als auf einer persistenten Datenbank. Wir wollen aber nicht immer die Konfigurationsdatei anpassen, wenn wir Tests laufen lassen. Ein Feature, das uns hier gelegen kommt, ist die Möglichkeit, die Einstellungen in der Hibernate-Configuration im Programm zu

19 3.3 Ein erstes Beispiel mit Hibernate 53 ergänzen oder zu überschreiben. In der setup()-methode können wir vor dem Erzeugen des SchemaExports Folgendes einfügen: configuration.setproperty( "hibernate.connection.url", "jdbc:h2:mem:termine;db_close_delay=-1"); Dies ersetzt in der Configuration die URL der Datenbank mit einer URL für eine In-Memory-H2, die erzeugt wird, sobald der H2-Treiber den ersten Befehl ausführt. Bei dieser Angabe der Property muss»hibernate.«als Präfix angegeben werden. Bei der Konfigurationsdatei kann dieses Präfix entfallen, weil vom Kontext her klar ist, dass es sich um eine Hibernate-Property handelt. Der Zusatz DB_CLOSE_DELAY=-1 ist notwendig, weil die H2 die Datenbank schließt, sobald keine aktive Verbindung mehr besteht. Das hat bei einer In-Memory-Datenbank den Effekt, dass es beim nächsten Starten der Datenbank keine Tabellen mehr gibt. Die Tabellen, die im setup unseres Tests erzeugt werden, würden dann beim Ausführen der Tests nicht mehr zur Verfügung stehen. -1 gibt hier an, dass die Datenbank bis zum Beenden der Java-VM offen bleiben soll. Wird hier eine positive Zahl angegeben, wartet die H2 noch die entsprechende Anzahl von Millisekunden, bis sie geschlossen wird. Das ist jedoch für Tests mit In-Memory-Datenbanken zu unsicher. Wenn zwischen zwei Datenbankverbindungen in einem Test zu viel Zeit vergeht, führt das zu schwer auffindbaren Fehlern. Diese Option kann zur Performance-Optimierung bei der Verwendung einer persistenten H2 benutzt werden. Persistente Objekte suchen Speichern und Laden eines Termins funktioniert also. Eine wichtige Eigenschaft von Datenbanken ist, dass in ihnen gut nach Datensätzen gesucht werden kann. In Hibernate sucht man mit Querys nach Objekten. Query query = session.createquery( "from Termin where ort='" + ORT + "'"); List result = query.list(); assertequals(1, result.size()); Termin termin = (Termin) result.get(0); Wir sparen uns hier den aus der vorigen Testmethode bekannten Vorund Nachlauf und beschränken uns auf das Wesentliche. Eine Möglichkeit der Suche (andere Möglichkeiten werden wir in den folgenden Kapiteln zeigen) steht mit der Hibernate-Query bereit. Der Ausdruck, der in der Query angegeben ist, sieht einem SQL-Select ähnlich. Es fehlt Hibernate-Query

20 54 nur das select, und hinter dem from steht nicht der Tabellenname, sondern der Klassenname. ort bezieht sich nicht auf den Spaltennamen in der Datenbank, sondern auf das JavaBeans-Attribut der Klasse. Die Query wird mit query.list() gestartet. Diese Methode gibt das Ergebnis der Query als Liste zurück. (query.iterate() ist eine alternative Art, die Query zu starten, und gibt einen Iterator auf das Ergebnis zurück.) Wir stellen sicher, dass die Liste genau ein Element hat, und ziehen den einzigen in der Liste enthaltenen Termin heraus. Persistente Objekte aktualisieren Objekte, die einmal gespeichert wurden, will man auch wieder ändern können. Termin termin = (Termin) session.load(termin.class, _id); Transaction transaction = session.begintransaction(); termin.settitel("neuer Termin"); transaction.commit(); Zuerst laden wir den Termin, den wir ändern wollen, öffnen eine Transaktion und ändern den Termin anschließend wie gewohnt. Hibernate erfordert also keine Änderung des normalen Umgangs mit Objekten. Nach der Änderung schließen wir die Transaktion ab, die wir zuvor aufgemacht haben. Persistente Objekte löschen Nun bleibt nur noch das Löschen von Objekten, bevor wir mit dem ersten Durchgang durch Hibernate fertig sind: Termin termin = (Termin) session.load(termin.class, _id); Transaction transaction = session.begintransaction(); session.delete(termin); transaction.commit(); session.close(); session = _sessionfactory.opensession(); termin = (Termin) session.get(termin.class, _id); assertnull(termin); delete Zum Löschen eines Objektes dient die Methode delete an der Hibernate-Session. Um diese Methode aufrufen zu können, müssen wir zuerst den Termin laden, der gelöscht werden soll. Nach dem Löschen versuchen wir, das Objekt mit session.get() zu laden. get() ist load() ähnlich. Der Unterschied zwischen get() und load() ist, dass get() ein null zurückgibt, wenn es das angeforderte Objekt nicht gibt, während load in diesem Fall eine Exception wirft.

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

Live Update (Auto Update)

Live Update (Auto Update) Live Update (Auto Update) Mit der Version 44.20.00 wurde moveit@iss+ um die Funktion des Live Updates (in anderen Programmen auch als Auto Update bekannt) für Programm Updates erweitert. Damit Sie auch

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

JBuilderX: Installation und Kurzanleitung (Windows)

JBuilderX: Installation und Kurzanleitung (Windows) JBuilder X Seite 1 JBuilderX: Installation und Kurzanleitung (Windows) 1. JBuilder installieren Eine Gratis-Version kann von der Webseite www.borland.de heruntergeladen werden. Systemvoraussetzungen: 256

Mehr

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein Einrichtung von orgamax-mobil Um die App orgamax Heute auf Ihrem Smartphone nutzen zu können, ist eine einmalige Einrichtung auf Ihrem orgamax Rechner (bei Einzelplatz) oder Ihrem orgamax Server (Mehrplatz)

Mehr

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Installationsanleitung für Magento-Module

Installationsanleitung für Magento-Module Installationsanleitung für Magento-Module Installation durch die Modulwerft Wenn Sie es wünschen, können Sie das Modul durch unseren Installationsservice in Ihrem Shopsystem sicher und schnell installieren

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

INSTALLATION VON INSTANTRAILS 1.7

INSTALLATION VON INSTANTRAILS 1.7 INSTALLATION VON INSTANTRAILS 1.7 InstantRails 1.7 ist ein Paket, das Ruby, Rails, Apache, MySQL und andere Tools, z.b. phpmyadmin in vorkonfigurierter Form enthält. Das Paket muss in einem Verzeichnis

Mehr

Adminer: Installationsanleitung

Adminer: Installationsanleitung Adminer: Installationsanleitung phpmyadmin ist bei uns mit dem Kundenmenüpasswort geschützt. Wer einer dritten Person Zugriff auf die Datenbankverwaltung, aber nicht auf das Kundenmenü geben möchte, kann

Mehr

Installation OMNIKEY 3121 USB

Installation OMNIKEY 3121 USB Installation OMNIKEY 3121 USB Vorbereitungen Installation PC/SC Treiber CT-API Treiber Einstellungen in Starke Praxis Testen des Kartenlesegeräts Vorbereitungen Bevor Sie Änderungen am System vornehmen,

Mehr

Backup der Progress Datenbank

Backup der Progress Datenbank Backup der Progress Datenbank Zeitplandienst (AT): Beachten Sie bitte: Die folgenden Aktionen können nur direkt am Server, vollzogen werden. Mit Progress 9.1 gibt es keine Möglichkeit über die Clients,

Mehr

Programme im Griff Was bringt Ihnen dieses Kapitel?

Programme im Griff Was bringt Ihnen dieses Kapitel? 3-8272-5838-3 Windows Me 2 Programme im Griff Was bringt Ihnen dieses Kapitel? Wenn Sie unter Windows arbeiten (z.b. einen Brief schreiben, etwas ausdrucken oder ein Fenster öffnen), steckt letztendlich

Mehr

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt.

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt. Python Installation 1 Vorbereitung Diese Anleitung ist für Windows ausgelegt. 1.1 Download Python kann online unter https://www.python.org/downloads/ heruntergeladen werden. Hinweis: Im CoderDojo verwenden

Mehr

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Nach dem Update auf die Version 1.70 bekommen Sie eine Fehlermeldung,

Mehr

System-Update Addendum

System-Update Addendum System-Update Addendum System-Update ist ein Druckserverdienst, der die Systemsoftware auf dem Druckserver mit den neuesten Sicherheitsupdates von Microsoft aktuell hält. Er wird auf dem Druckserver im

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

MailUtilities: Remote Deployment - Einführung

MailUtilities: Remote Deployment - Einführung MailUtilities: Remote Deployment - Einführung Zielsetzung Die Aufgabe von Remote Deployment adressiert zwei Szenarien: 1. Konfiguration der MailUtilities von einer Workstation aus, damit man das Control

Mehr

Tutorial - www.root13.de

Tutorial - www.root13.de Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk

Mehr

Speichern. Speichern unter

Speichern. Speichern unter Speichern Speichern unter Speichern Auf einem PC wird ständig gespeichert. Von der Festplatte in den Arbeitspeicher und zurück Beim Download Beim Kopieren Beim Aufruf eines Programms Beim Löschen Beim

Mehr

25 Import der Beispiele

25 Import der Beispiele 25 Import der Beispiele Versuch es nicht mit Gewalt. Nimm einfach einen größeren Hammer (Murphy s Law) 25.1 Einleitung Alle Beispielprogramme dieses Buchs funktionieren mit jeder Java-konformen Entwicklungsumgebung.

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen) 1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise

Mehr

DOKUMENTATION VOGELZUCHT 2015 PLUS

DOKUMENTATION VOGELZUCHT 2015 PLUS DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Kapitel 3 Frames Seite 1

Kapitel 3 Frames Seite 1 Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den

Mehr

Eine Einführung in die Installation und Nutzung von cygwin

Eine Einführung in die Installation und Nutzung von cygwin Eine Einführung in die Installation und Nutzung von cygwin 1 1. Woher bekomme ich cygwin? Cygwin ist im Internet auf http://www.cygwin.com/ zu finden. Dort lädt man sich die setup.exe in ein beliebiges

Mehr

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...

Mehr

Einführung in die Informatik Tools

Einführung in die Informatik Tools Einführung in die Informatik Tools Werkzeuge zur Erstellung von Softwareprojekten Wolfram Burgard 8.1 Motivation Große Softwareprojekte werden schnell unübersichtlich. Änderungen im Code können leicht

Mehr

Konvertieren von Settingsdateien

Konvertieren von Settingsdateien Konvertieren von Settingsdateien Mit SetEdit können sie jedes der von diesem Programm unterstützten Settingsformate in jedes andere unterstützte Format konvertieren, sofern Sie das passende Modul (in Form

Mehr

Installationsanleitungen

Installationsanleitungen Installationsanleitungen INPA SGBD-Entwicklungsumgebung (EDIABAS) INPA für Entwickler Bevor Sie EDIABAS / INPA installieren können, müssen Sie sich für den Ordner sgref auf smuc0900 freischalten lassen.

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Ihr CMS für die eigene Facebook Page - 1

Ihr CMS für die eigene Facebook Page - 1 Ihr CMS für die eigene Facebook Page Installation und Einrichten eines CMS für die Betreuung einer oder mehrer zusätzlichen Seiten auf Ihrer Facebook Page. Anpassen der "index.php" Installieren Sie das

Mehr

Anleitung. Update/Aktualisierung EBV Einzelplatz. und Mängelkatalog

Anleitung. Update/Aktualisierung EBV Einzelplatz. und Mängelkatalog Anleitung Update/Aktualisierung EBV Einzelplatz und Mängelkatalog Zeichenerklärung Möglicher Handlungsschritt, vom Benutzer bei Bedarf auszuführen Absoluter Handlungsschritt, vom Benutzer unbedingt auszuführen

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung Anleitung zur Daten zur Datensicherung und Datenrücksicherung Datensicherung Es gibt drei Möglichkeiten der Datensicherung. Zwei davon sind in Ges eingebaut, die dritte ist eine manuelle Möglichkeit. In

Mehr

Hex Datei mit Atmel Studio 6 erstellen

Hex Datei mit Atmel Studio 6 erstellen Hex Datei mit Atmel Studio 6 erstellen Es werden generell keine Atmel Studio Dateien ins Repository geladen, da jeder seine Dateien an anderen Orten liegen hat und weil nicht jeder das Atmel Studio 6 benutzt.

Mehr

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt. Internet, Codes und Update ab Version 13 Um Ihnen einen möglichst schnellen Zugang zu den aktuellsten Programmversionen zu ermöglichen liegen Update-Dateien für Sie im Internet bereit. Es gibt drei Möglichkeiten

Mehr

PRAXISBUTLER ANPASSUNG DER VORLAGEN

PRAXISBUTLER ANPASSUNG DER VORLAGEN Praxisbutler Anpassung der Vorlagen 1 PRAXISBUTLER ANPASSUNG DER VORLAGEN Die Vorlagen werden hauptsächlich in den Bereichen Klienten und Fakturierung benutzt. Die Anpassung dieser Vorlagen ist wichtig,

Mehr

etermin Einbindung in Outlook

etermin Einbindung in Outlook etermin Einbindung in Outlook 1. Einführung Über etermin gebuchte Termine können bei Bedarf auch mit externen Terminkalendern, wie zum Beispiel Outlook, ical oder Google synchronisiert werden. Dieses Dokument

Mehr

WordPress. Dokumentation

WordPress. Dokumentation WordPress Dokumentation Backend-Login In das Backend gelangt man, indem man hinter seiner Website-URL einfach ein /wp-admin dranhängt www.domain.tld/wp-admin Dabei gelangt man auf die Administrationsoberfläche,

Mehr

Datenbanken auf Sybase SQL-Anywhere

Datenbanken auf Sybase SQL-Anywhere Office Manager Enterprise oder Client/Server (ab Version 6.0.3.170) Datenbanken auf Sybase SQL-Anywhere A. Office Manager-Installationen Falls die Office Manager Enterprise- oder Client/Server-Version

Mehr

PHPNuke Quick & Dirty

PHPNuke Quick & Dirty PHPNuke Quick & Dirty Dieses Tutorial richtet sich an all die, die zum erstenmal an PHPNuke System aufsetzen und wirklich keine Ahnung haben wie es geht. Hier wird sehr flott, ohne grosse Umschweife dargestellt

Mehr

Installation des edu- sharing Plug- Ins für Moodle

Installation des edu- sharing Plug- Ins für Moodle Installation des edu- sharing Plug- Ins für Moodle [edu-sharing Team] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu- sharing / metaventis

Mehr

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Der Konfigurations-Assistent wurde entwickelt, um die unterschiedlichen ANTLOG-Anwendungen auf den verschiedensten Umgebungen automatisiert

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

INSTALLATION. Voraussetzungen

INSTALLATION. Voraussetzungen INSTALLATION Voraussetzungen Um Papoo zu installieren brauchen Sie natürlich eine aktuelle Papoo Version die Sie sich auf der Seite http://www.papoo.de herunterladen können. Papoo ist ein webbasiertes

Mehr

Leitfaden zur Installation von Bitbyters.WinShutdown

Leitfaden zur Installation von Bitbyters.WinShutdown Leitfaden zur Installation von Bitbyters.WinShutdown für Windows 32 Bit 98/NT/2000/XP/2003/2008 Der BitByters.WinShutDown ist ein Tool mit dem Sie Programme beim Herunterfahren Ihres Systems ausführen

Mehr

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...

Mehr

Warenwirtschaft Handbuch - Administration. 2013 www.addware.de

Warenwirtschaft Handbuch - Administration. 2013 www.addware.de Warenwirtschaft Handbuch - Administration 2 Warenwirtschaft Inhaltsverzeichnis Vorwort 0 Teil I Administration 3 1 Datei... 4 2 Datenbank... 6 3 Warenwirtschaft... 12 Erste Schritte... 13 Benutzerverwaltung...

Mehr

Eigene Seiten erstellen

Eigene Seiten erstellen PhPepperShop Anleitung Datum: 3. Oktober 2013 Version: 2.1 Eigene Seiten erstellen Eigene Inhalte / CMS Glarotech GmbH Inhaltsverzeichnis Anleitung zur Erstellung von eigenen Inhalten/Links...3 1. Anmeldung

Mehr

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:

Mehr

Netzwerk einrichten unter Windows

Netzwerk einrichten unter Windows Netzwerk einrichten unter Windows Schnell und einfach ein Netzwerk einrichten unter Windows. Kaum ein Rechner kommt heute mehr ohne Netzwerkverbindungen aus. In jedem Rechner den man heute kauft ist eine

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchführung der Datenübernahme nach Reisekosten 2011 Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Um mit IOS2000/DIALOG arbeiten zu können, benötigen Sie einen Webbrowser. Zurzeit unterstützen wir ausschließlich

Mehr

Hinweise zur Installation von MySQL

Hinweise zur Installation von MySQL Hinweise zur Installation von MySQL Im Folgenden werden einige Hinweise gegeben, die die Einrichtung einer MySQL-Lernumgebung am eigenen Windows-Rechner erleichtern sollen. Der Text ist vor allem für diejenigen

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Medea3 Print-Client (m3_print)

Medea3 Print-Client (m3_print) Medea3 Print-Client (m3_print) Installationsanleitung Installationsanleitung m3_print.exe...2 1. Installieren von Ghostskript und Ghostview...2 1. Ghostskript...2 2. Ghostview...3 2. Kopieren des Print-Client-Programms...6

Mehr

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5 Im Folgenden wird die Installation von MySQL 5.0 und Tomcat 5.0 beschrieben. Bei MySQL Server 5.0 handelt es sich um ein

Mehr

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren.

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren. CLIENT INSTALLATION DES ENIQ ACCESSMANAGEMENTS Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren. Ein Client kann in drei

Mehr

Warum beschäftigt sich ein Linux-Systemhaus mit der Installation von OTRS mit einem Microsoft SQL Server?

Warum beschäftigt sich ein Linux-Systemhaus mit der Installation von OTRS mit einem Microsoft SQL Server? Vorbemerkung Warum beschäftigt sich ein Linux-Systemhaus mit der Installation von OTRS mit einem Microsoft SQL Server? Da wir schon seit einigen Jahren mit OTRS arbeiteten, hat uns ein Kunde beauftragt,

Mehr

Handbuch PCI Treiber-Installation

Handbuch PCI Treiber-Installation Handbuch PCI Treiber-Installation W&T Release 1.0, September 2003 09/2003 by Wiesemann & Theis GmbH Microsoft und Windows sind eingetragene Warenzeichen der Microsoft Corporation Irrtum und Änderung vorbehalten:

Mehr

Leitfaden Installation des Cisco VPN Clients

Leitfaden Installation des Cisco VPN Clients Leitfaden Seite 1 von 19 INHALTSVERZEICHNIS 1.Vorbereitung für die Installation...3 1.1 Einrichten einer Wählverbindung...3 1.1.1 Einwahl Parameter...3 1.1.2 Netzwerk Konfiguration...4 1.2 Entpacken der

Mehr

32.4 Anpassen von Menüs und Symbolleisten 795i

32.4 Anpassen von Menüs und Symbolleisten 795i 32.4 Anpassen von Menüs und Symbolleisten 795i Fortsetzung der Seiten in der 8. Auflage 32.4 Anpassen von Menüs und Symbolleisten 32.4.1 Anpassen von Menüs Die Menüs können um folgende Typen von Optionen

Mehr

Verbinden von IBM Informix mit Openoffice mittels JDBC

Verbinden von IBM Informix mit Openoffice mittels JDBC Verbinden von IBM Informix mit Openoffice mittels JDBC Voraussetzungen Installierte und laufende IBM Informixdatenbank. Getestet wurde mit IDS 9.40 und 10.00. Sollte aber auch mit älteren Versionen funktionieren.

Mehr

MetaQuotes Empfehlungen zum Gebrauch von

MetaQuotes Empfehlungen zum Gebrauch von MetaQuotes Empfehlungen zum Gebrauch von MetaTrader 4 auf Mac OS Auch wenn viele kommerzielle Angebote im Internet existieren, so hat sich MetaQuotes, der Entwickler von MetaTrader 4, dazu entschieden

Mehr

Die Dateiablage Der Weg zur Dateiablage

Die Dateiablage Der Weg zur Dateiablage Die Dateiablage In Ihrem Privatbereich haben Sie die Möglichkeit, Dateien verschiedener Formate abzulegen, zu sortieren, zu archivieren und in andere Dateiablagen der Plattform zu kopieren. In den Gruppen

Mehr

Installation von Updates

Installation von Updates Installation von Updates In unregelmässigen Abständen erscheinen Aktualisierungen zu WinCard Pro, entweder weil kleinere Verbesserungen realisiert bzw. Fehler der bestehenden Version behoben wurden (neues

Mehr

mysoftfolio360 Handbuch

mysoftfolio360 Handbuch mysoftfolio360 Handbuch Installation Schritt 1: Application Server und mysoftfolio installieren Zuallererst wird der Application Server mit dem Setup_ApplicationServer.exe installiert und bestätigen Sie

Mehr

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon.

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon. www.blogger.com Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon. Sie müssen sich dort nur ein Konto anlegen. Dafür gehen Sie auf

Mehr

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten: WOT Skinsetter WOT Skinsetter steht für World of Tanks skinsetter (WOTS von nun an). Mit diesen Tool können Sie Skins importieren und ändern, wann immer Sie möchten auf einfache Weise. Als World of Tanks

Mehr

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole Lavid-F.I.S. Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der Lavid Software GmbH Dauner Straße 12, D-41236 Mönchengladbach http://www.lavid-software.net Support:

Mehr

Urlaubsregel in David

Urlaubsregel in David Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5

Mehr

Handbuch B4000+ Preset Manager

Handbuch B4000+ Preset Manager Handbuch B4000+ Preset Manager B4000+ authentic organ modeller Version 0.6 FERROFISH advanced audio applications Einleitung Mit der Software B4000+ Preset Manager können Sie Ihre in der B4000+ erstellten

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen. HACK #39 Hack Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.»verschlüsseln Sie Ihren Temp-Ordner«[Hack #33] hat Ihnen gezeigt, wie Sie Ihre Dateien mithilfe

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

Mehr

2.1 Briefkopf Klicken Sie im Menü Einstellungen auf den Button Briefkopf. Folgendes Formular öffnet sich:

2.1 Briefkopf Klicken Sie im Menü Einstellungen auf den Button Briefkopf. Folgendes Formular öffnet sich: Installation 1 Installation 1 2 Einstellungen 1 2.1 Briefkopf 1 2.2 Logo 2 2.3 Zusatztext 2 2.4 Fußzeile 2 2.5 Mehrwertsteuer (Umsatzsteuer) 3 2.6 Rechnungsnummer 4 2.7 Drucken 4 2.8 Einheiten 5 3 Artikelverwaltung

Mehr

Quickstep Server Update

Quickstep Server Update Quickstep Server Update Übersicht Was wird aktualisiert Update einspielen intersales stellt das Quickstep Entwicklungs- und Ablaufsystem auf eine aktuelle Version um. Hierfür ist es erforderlich, Ihre

Mehr

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. In diesem Artikel werden wir Ihnen zeigen, wie Sie eine Datenbank verschlüsseln können, um den Zugriff einzuschränken, aber trotzdem noch eine

Mehr

Herzlich willkommen bei der Installation des IPfonie -Softclients!

Herzlich willkommen bei der Installation des IPfonie -Softclients! Herzlich willkommen bei der Installation des IPfonie -Softclients! Sie benötigen diesen Softclient, um mit Ihrem Computer bequem über Ihren Internetanschluss telefonieren zu können. Der Softclient ist

Mehr

Einfügen von Bildern innerhalb eines Beitrages

Einfügen von Bildern innerhalb eines Beitrages Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de

Mehr

How to install freesshd

How to install freesshd Enthaltene Funktionen - Installation - Benutzer anlegen - Verbindung testen How to install freesshd 1. Installation von freesshd - Falls noch nicht vorhanden, können Sie das Freeware Programm unter folgendem

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr

Sichern der persönlichen Daten auf einem Windows Computer

Sichern der persönlichen Daten auf einem Windows Computer Sichern der persönlichen Daten auf einem Windows Computer DIRECTION DES SERVICES IT SERVICE DIT-MI DIREKTION DER IT-DIENSTE DIENSTSTELLE DIT-MI 1/9 1 Inhaltsverzeichnis 2 Einleitung... 3 3 Outlook Daten...

Mehr