• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/23

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

23 Cards in this Set

  • Front
  • Back
Persistente Daten
Weden über die Lebensdauer der Sitzung eines Benutzers oder der Betriebssystem-Prozesse, die die Daten verarbeiten, hinaus gespeichert
Datenhaltung/Datenverwaltung
Mechanismen und Strategien zur Speicherung und Bearbeitung von Daten
Verschiedene persistente Datenspeicher
- Dateisystem
- Relationale Datenbank
- Native XML Datenbank
- Objektorientierte Datenbank
- CMS (Content Management System)
- NoSQL Datenbanken
Dateisystem - Vorteile
- Überall verfügbar
- Einfachste Form von Zugriff; Benutzung
Dateisystem - Nachteile
- Fehlende Erweiterbarkeit
- Mehrbenutzerzugriff
- Skalierbarkeit
XML-Dateien (eXtensible Markup Language) - Vorteile
- Plattformunabhänig
- Erweiterbar
- Flexibel
- Menschenlesbar
- Wird von DBMS unterstützt
XML-Dateien (eXtensible Markup Language) - Nachteil
- Im Detail nicht trivial
- stellt keine einfache Unterstützung führ Referenzen zur Verfügung
- beschränkt auf hierarchische Schachtelung
- Aktualisierung nur über Laden & Speichern
Definition Datenbankmanagementsystem (DBMS)
Die Gesamtheit der Programme zum Zugriff auf die Datenbasis, zur Kontrolle der Konsistenz und zur Modifikation der Daten.
Definition Contentmanagementsystem (CMS)
Ist ein System, das es mehreren Benutzern (Programmen) ermöglicht, Informationen gemeinsam zu bearbeiten und zu speichern
Definition NoSQL-Datenbank
- Meist nicht Relationss
- Schemaschwach oder gar schemafrei
- (+) können mit vielen Schreib- und Leseanfragen umgehen
- (-) bieten kaum Garantien hinsichtlich ACID
Java Database Connectivity (JDBC)
Bietet einheitliche Schnittstelle zu Datenbanken verschiedener Hersteller
Bietet einheitliche Schnittstelle zu Datenbanken verschiedener Hersteller
Relationale Abbildung von Vererbungshierarchien - "Single Table Strategy"
- Eine Tabelle für Super- und Subklassen mit allen Attributen
- Diskriminator-Spalte
@Inheritance(strategy=SINGLE_TABLE)
@DiscriminatorColumn(name="Type")
// ...
@DiscriminatorValue("Type1")
- Eine Tabelle für Super- und Subklassen mit allen Attributen
- Diskriminator-Spalte
@Inheritance(strategy=SINGLE_TABLE)
@DiscriminatorColumn(name="Type")
// ...
@DiscriminatorValue("Type1")
Relationale Abbildung von Vererbungshierarchien - "Table per Class Strategy"
- Eine Tabelle pro Klasse mit jeweils der vollständigen Menge an Attribute
@Inheritance(strategy=TABLE_PER_CLASS)
- Eine Tabelle pro Klasse mit jeweils der vollständigen Menge an Attribute
@Inheritance(strategy=TABLE_PER_CLASS)
Relationale Abbildung von Vererbungshierarchien - "Joined Table Strategy"
- Tabelle für Superklasse mit PK und generellen Attributen
- pro Subklasse eine Tabelle mit PK und spezifischen Attributen
@Inheritance(strategy=JOINED)
- Tabelle für Superklasse mit PK und generellen Attributen
- pro Subklasse eine Tabelle mit PK und spezifischen Attributen
@Inheritance(strategy=JOINED)
Objektrelationales Mapping
Zustand von Java-Objeketen (Entities) wird auf Daten einer relationalen Datenbank abgebildet
Grundlagen Persistent Entities
- Persistent Entities bieten objektorientierten Zugriff auf persistente Informationen in der Datenbank (z.b. Kunde oder Artikel)
- z.B. "Mapping" einer Tabelle auf eine Entity-Klasse
- Jede Zeile wird durch eine Instanz einer Entity repräsentiert
- Jede Entity-Instanz hat einen eindeutigen PK
- Entities existieren solange die zugehörige Datenbank existiert
Spezifikationen/Entwicklung einer Entity
Entities gehorchen der JavaBean Spezifikation:
- Attribute haben "getter"- und "setter"-Methoden
- Klasse hat einen Default-Konstruktor
- Muss das Interface java.io.Serializable implementieren
Objektrelationale Abbildung bei Vererbung - Single Table Strategy
Objektrelationale Abbildung bei Vererbung - Table Per Class Strategy
@Inheritance(strategy=TABLE_PER_CLASS)
kein Diskriminator
Objektrelationale Abbildung bei Vererbung - Joined Table Strategy
@Inheritance(strategy=JOINED)
kein Diskriminator
Objektrelationale Abbildung bei Assoziationen zwischen Objekten
JPA unterstützt Abbildung von Assoziationen folgender Typen:
- @OneToOne
- @OneToMany
- @ManyToOne
- @ManyToMany
Entity Manager
javax.peristence.EntityManager erlaubt Zugriff auf den Datenspeicher. Er erlaubt folgende Methoden:
- void persist(Object o): speichert Objekt in Datenbank
- void remove(Object o) löscht Objekt aus Datenbank
- Object find(Class clazz, Object PrimaryKey): findet Objekt mit zugehörigern PrimaryKey Datenbank
- Object merge(Object o): veränder Objekt in Datenbank
Entity Manager: Querying - Anforderungen
- Abfragefunktion (Querys) über den Datenbeständen auf Persistent Entities
- Assoziationen sind datenbankunabhängig ausgedrückt
-> Datenbankunabhängige Sprache (Java Persistence Query Language - JPQL)
-> natives SQL der genutzten Datenbank wird ebenfalls unterstützt