schule:db4o
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
schule:db4o [2015-12-15 15:48] – [db4o] Link korr. marco.bakera | schule:db4o [2017-04-19 09:47] – Videoeinbettung: flowplayer entfernt marco.bakera | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== db4o ====== | ||
+ | |||
+ | [[wpde> | ||
+ | |||
+ | ===== Für Java ===== | ||
+ | |||
+ | |||
+ | Ich habe mir das Paket angeschaut und ein Beispiel für Java programmiert und mitgefilmt. Das Ganze habe ich in der IDE Eclipse durchgeführt. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== Für C# und .NET ===== | ||
+ | |||
+ | Für unsere Versuche benötigen wir eine einfache Klasse " | ||
+ | |||
+ | <code csharp> | ||
+ | class Person | ||
+ | { | ||
+ | string name; | ||
+ | |||
+ | public Person(string meinName) | ||
+ | { | ||
+ | name = meinName; | ||
+ | } | ||
+ | |||
+ | public void NameÄndern(string neuerName) | ||
+ | { | ||
+ | name = neuerName; | ||
+ | } | ||
+ | |||
+ | public Boolean Heißt(String einName) | ||
+ | { | ||
+ | return name.Equals(einName); | ||
+ | } | ||
+ | |||
+ | public override string ToString() | ||
+ | { | ||
+ | return name; | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Um db4o benutzen zu können, importieren wir die nötigen Klassen. | ||
+ | |||
+ | <code csharp> | ||
+ | using Db4objects.Db4o; | ||
+ | </ | ||
+ | |||
+ | In einem einfachen Konsolenprogramm erzeugen wir nun eine Datenbank und zwei Personen Max und Moni. Diese werden anschließend in der Datenbank gespeichert. | ||
+ | |||
+ | |||
+ | <code csharp> | ||
+ | IEmbeddedObjectContainer db = Db4oEmbedded.OpenFile(" | ||
+ | |||
+ | Console.WriteLine(" | ||
+ | Person max = new Person(" | ||
+ | Person moni = new Person(" | ||
+ | |||
+ | Console.WriteLine(" | ||
+ | db.Store(max); | ||
+ | db.Store(moni); | ||
+ | </ | ||
+ | |||
+ | Um an die Objekte in der Datenbank zu gelangen, lassen wir uns alle Personen ausgeben, die in der Datenbank gespeichert sind. | ||
+ | |||
+ | <code csharp> | ||
+ | Console.WriteLine(" | ||
+ | // Wir suchen nach allen Personen in der Datenbank | ||
+ | IList< | ||
+ | foreach (Person person in gefunden) | ||
+ | { | ||
+ | Console.WriteLine("> | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Ausgabe: | ||
+ | > Max | ||
+ | > Moni | ||
+ | |||
+ | Wenn wir nachträglich ein Objekt ändern, müssen wir der Datenbank die Änderung mitteilen. Das machen wir nun, indem wir den Namen von Max ändern. | ||
+ | |||
+ | <code csharp> | ||
+ | Console.WriteLine(" | ||
+ | max.NameÄndern(" | ||
+ | Console.WriteLine(" | ||
+ | db.Store(max); | ||
+ | |||
+ | Console.WriteLine(" | ||
+ | gefunden = db.Query< | ||
+ | foreach (Person person in gefunden) | ||
+ | { | ||
+ | Console.WriteLine("> | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | Ausgabe: | ||
+ | > Maxi | ||
+ | > Moni | ||
+ | |||
+ | Wir können die Datenbank gezielt nach bestimmten Objekte durchsuchen. Dazu übergeben wir der Query-Methode ein Prädikat, das für alle Objekte erfüllt sein muss, die wir suchen. | ||
+ | |||
+ | <code csharp> | ||
+ | Console.WriteLine(" | ||
+ | IList< | ||
+ | foreach (Person eineMoni in monis) | ||
+ | { | ||
+ | Console.WriteLine("> | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Ausgabe: | ||
+ | > Moni | ||
+ | | ||
+ | Zum Schluss löschen wir alle Personen wieder aus der Datenbank. | ||
+ | |||
+ | <code csharp> | ||
+ | Console.WriteLine(" | ||
+ | IList< | ||
+ | | ||
+ | foreach (Person person in allePersonen) | ||
+ | { | ||
+ | Console.WriteLine(" | ||
+ | db.Delete(person); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Ausgabe: | ||
+ | > Lösche Maxi | ||
+ | > Lösche Moni | ||
+ | |||
+ | |||
+ | Um die Datenkbankverbindung sauber zu beenden, schließen wir zum Schluss die Datenbank. | ||
+ | |||
+ | <code csharp> | ||
+ | Console.WriteLine(" | ||
+ | db.Close(); | ||
+ | </ | ||
schule/db4o.txt · Zuletzt geändert: 2021-04-21 15:34 von pintman