SpOPSX :: Ginsu.

SpOPSX :: Ginsu ist eine Spops-Erweiterung für die allgemeine Erbschaftsunterstützung.
Jetzt downloaden

SpOPSX :: Ginsu. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Ray Zimmerman
  • Website des Verlags:
  • http://search.cpan.org/~zman/SPOPSx-Ginsu-0.58/SPOPSx/Ginsu.pm

SpOPSX :: Ginsu. Stichworte


SpOPSX :: Ginsu. Beschreibung

SpOPSX :: Ginsu ist eine Spop-Erweiterung für die allgemeine Erbschaftsunterstützung. SpOPSX :: Ginsu ist eine Spops-Erweiterung für allgemeine Erbschaftsunterstützung.Synopsis1. Erstellen Sie eine DataSource-Klasse, zum Beispiel MyDBI, das von SpoPSX :: Ginsu :: dBI erbt, hält die Paketvariablen für die Datenbankverbindung (z. B. siehe t / mydbi.pm) .2. Erstellen Sie eine Root-Basisklasse, z. B. MyBaseObject, die von der DataSource-Klasse und des SpOPSX :: Ginsu erbt und den Basistabellen definiert (z. B. t / myBaseObject.pm) .3. Erstellen Sie Ihre eigene Unterklasse von MyBaseObject, die die eigenen Felder definiert (z. B. siehe t / person.pm) .4. Erstellen einer Konfigurationsdatei, die die Paketvariablen definiert, die von der DataSource-Klasse verwendet werden, um die Datenbankverbindung (z. B. siehe t / my_dbi_conf.pm) zu erstellen. Als Datei aus den Schritten 1-4 sind mydbi.pm, myBaseObject.pm, myObject.pm und my_dbi_conf.pm ... verwenden my_dbi_conf; Verwenden Sie MyObject; $ obj = myObject-> neu ({field1 => 'value1', ...}); $ obj = $ obj-> Speichern; $ obj = myObject-> holen ($ ID); $ obj = myBaseObject-> PM_FETCH ($ ID); $ obj-> entfernen; Dies ist die Basisklasse für alle Ginsu-Objekte. SpoPs :: DBI implementiert einen geerbten Persistenzmechanismus für Klassen, dessen Objekte jeweils als Zeile in einer einzelnen Datenbanktabelle gespeichert sind. Jede Klasse verfügt über einen eigenen Tisch und alle persistenten Felder werden in diesem Tisch gespeichert. Ginsu erweitert diese Implementierung, um die Unterklasse solcher Objekte mit einem polymorphen Abruf zu verarbeiten. Die Felder eines bestimmten Objekts werden über mehrere Datenbanktabellen gespeichert, eines für jede Elternklasse mit anhaltenden Feldern. Ein Ginsu-Objekt ist einfach ein Spops :: DBI-Objekt, das über mehrere Datenbanktabellen gespeichert ist. Alle Objekte, für die ein polymorpher Zugriff eine Basisklasse teilen muss, deren Tabelle über ein einzigartiges Feld "ID" verfügt, das ein einzigartiges 'ID' -Feld und ein 'Class' hat. In den für die Tests verwendeten Beispielklassen (siehe das Diagramm in docs / example.pdf) wird diese Klasse MyBaseObject bezeichnet. Angenommen, wir haben eine Fahrzeugbildklasse, die von MyBaseObject erbte, der den Namen "Name" und "Besitzer" hat. Und vermuten Sie, dass die Fahrzeugkomprementierung ein Unterklassenflugzeug enthält, das das Feld "Decke" hinzufügt. In diesem Beispiel wird ein Flugzeugobjekt in 3 Tabellen, 'ID' und 'Klasse' im Base_Table für MyBaseObject, 'Name' und 'Besitzer' im Base_Table für die Fahrzeug- und 'Decke' in der Base_Table für Flugzeuge gespeichert. Jede Tabelle hat auch ein id_field, mit dem die Teile des Objekts zusammen mit den 3 Tables zusammengefügt werden. In einer .pm-Datei definiert wie ein Standard-Perl-Objekt mit einigen Ergänzungen. Jede Klasse muss die Variablen @Isa, $ conf und $ table_def im Beginn-Block definieren. Die @Isa-Variable ist Standard-Perl und $ table_def enthält eine SQL-Anweisung, die die Tabelle für die entsprechende Klasse erstellt. Die $ CONF-Variable enthält nur eine Spops-Konfigurations-Hash mit der Konfiguration für diese Klasse. Der Beginnsblock folgt "Verwendung" -Anweisungen für die Klassen, auf die auf @Isa und den Teilen von 'HAS_A' und 'LINKS_TO' Teile von $ CONF verwiesen wird. Schließlich sollte es nach all der Gebrauchsaussagen die Zeile haben: __package __-> config_and_init; Durch das Übereinkommen setzen wir ihn als letzte Codezeile in der Datei ein. Diese Konventionen ermöglichen es uns zu sagen ... Verwenden Sie MyObject; ... So wie wir ein anderes Perl-Objekt verwenden würden. Anforderungen: · Perl.


SpOPSX :: Ginsu. Zugehörige Software