Benutzer-Werkzeuge

Webseiten-Werkzeuge


develop:datasource

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
develop:datasource [d.m.Y H:i] – angelegt willuhndevelop:datasource [d.m.Y H:i] (aktuell) – [Test-Klasse zum Lesen und Schreiben des Objektes] willuhn
Zeile 1: Zeile 1:
 ===== Der objektrelationale Mapper von Jameica ===== ===== Der objektrelationale Mapper von Jameica =====
  
 +==== Einleitung ==== 
 Jameica enthält einen objektrelationalen Mapper, mit dem Java-Objekte in Datenbanken gespeichert und gelesen werden können. Der Mapper kann auch einzeln (ohne Jameica) verwendet werden. Hier müssen sich lediglich folgende Dateien im Classpath befinden: Jameica enthält einen objektrelationalen Mapper, mit dem Java-Objekte in Datenbanken gespeichert und gelesen werden können. Der Mapper kann auch einzeln (ohne Jameica) verwendet werden. Hier müssen sich lediglich folgende Dateien im Classpath befinden:
  
-* de_willuhn_util.jar +  * de_willuhn_util.jar 
-* de_willuhn_ds.jar +  * de_willuhn_ds.jar 
-* der JDBC-Treiber für die Datenbank (z.Bsp.: mysql-connector-java-5.0.7-bin.jar)+  * der JDBC-Treiber für die Datenbank (z.Bsp.: mysql-connector-java-5.0.7-bin.jar)
  
-==== Beispiel ==== 
  
-== Aufbau der SQL-Tabelle ==+Folgendes Beispiel erläutert die Verwendungsweise. 
 + 
 +==== Aufbau der SQL-Tabelle ====
  
 Die Tabelle muss manuell erstellt werden. Der Mapper übernimmt dies nicht automatisch. Die Tabelle muss manuell erstellt werden. Der Mapper übernimmt dies nicht automatisch.
  
-  create table files ( +<code sql> 
-    id int(10) auto_increment not null, +create table files ( 
-    name varchar(255) not null, +  id int(10) auto_increment not null, 
-    data longblob not null, +  name varchar(255) not null, 
-    primary key (ID) +  data longblob not null, 
-  );+  primary key (ID) 
 +); 
 +</code>
  
-== Fachobjekt, welches die Tabelle auf ein Objekt mappt ==+==== Fachobjekt, welches die Tabelle auf ein Objekt mappt ====
  
 <code java> <code java>
Zeile 97: Zeile 101:
 </code> </code>
  
-== Test-Klasse zum Lesen und Schreiben des Objektes ==+ 
 +==== Test-Klasse zum Lesen und Schreiben des Objektes ==== 
 <code java> <code java>
 import java.io.*; import java.io.*;
 import de.willuhn.datasource.db.DBServiceImpl; import de.willuhn.datasource.db.DBServiceImpl;
 import de.willuhn.datasource.rmi.DBService; import de.willuhn.datasource.rmi.DBService;
 +import de.willuhn.datasource.rmi.DBIterator;
 import de.willuhn.logging.Logger; import de.willuhn.logging.Logger;
  
Zeile 110: Zeile 117:
     // Datenbank-Service erstellen.     // Datenbank-Service erstellen.
     String driver = "com.mysql.jdbc.Driver";     String driver = "com.mysql.jdbc.Driver";
-    String url    = "jdbc:mysql://localhost:3306/test?useUnicode=Yes&characterEncoding=ISO8859_1";+    String url    = "jdbc:mysql://localhost:3306/test?useUnicode=Yes&characterEncoding=ISO8859_1&serverTimezone=Europe/Paris";
     DBService service = new DBServiceImpl(driver,url,"test","test");     DBService service = new DBServiceImpl(driver,url,"test","test");
     service.start();     service.start();
Zeile 126: Zeile 133:
     }     }
  
-    // Objekt erzeugen+    // neues Objekt erzeugen
     TestObject object = (TestObject) service.createObject(TestObject.class,null);     TestObject object = (TestObject) service.createObject(TestObject.class,null);
     object.setName("Test1");     object.setName("Test1");
Zeile 135: Zeile 142:
     String id = object.getID();     String id = object.getID();
  
-    // Objekt laden+    // Liste der Objekte aus der Datenbank laden 
 +    DBIterator list = service.createList(TestObject.class); 
 +    // list.addFilter("name = ?", new Object{"test"}); // optionale WHERE-Bedingung 
 +    while (list.hasNext()) 
 +    { 
 +      TestObject o = (TestObject) list.next(); 
 +      System.out.println(o.getName()); 
 +    } 
 + 
 +    // einzelnes Objekt laden
     TestObject load = (TestObject) service.createObject(TestObject.class,id);     TestObject load = (TestObject) service.createObject(TestObject.class,id);
     byte[] data = load.getData();     byte[] data = load.getData();


Impressum | Datenschutz
develop/datasource.txt · Zuletzt geändert: d.m.Y H:i von willuhn