[JAVA] DAO

Dies ist eine Zusammenfassung für Anfänger, um persönlich zu lernen.

DAO(Data Access Object)

Einfach ausgedrückt, die Idee, eine Klasse namens DAO zu erstellen, die sich darauf spezialisiert hat, auf die Datenbank zuzugreifen und alles, was mit der Datenbank zu tun hat, uns zu überlassen. ・ Eines der JavaEE-Entwurfsmuster

Die einzigartigen Funktionen von DAO

  1. ** Indem Sie den Datenzugriff in Klassen abstrahieren, können Sie bestimmte Datenquellen aus der Geschäftsschicht ausblenden und sind nicht von diesen abhängig **

→ Wenn Sie eine bestimmte Datenquelle ausblenden können, muss die Geschäftsschicht die Änderung nicht kennen, selbst wenn sich die Datenquelle ändert, solange die Schnittstelle festgelegt wird. Wenn Sie beispielsweise jetzt postgresql verwenden und in Zukunft zu Oracle wechseln, muss die Geschäftsschicht die Änderung nicht kennen und die einzige Lösung ist DAO. Dies gilt auch dann, wenn die Persistenzschicht (die Schicht, in der Daten gespeichert werden, damit sie nach Programmende nicht verloren gehen) etwas anderes als RDBMS ist, z. B. CSV-Dateien und XML-DB (z. B. die Verwendung von Webdiensten). Es bedeutet auch, dass Sie sich dessen nicht bewusst sein müssen. → Grundsätzlich greift nur DAO auf die Datenbank zu. Selbst wenn sich die Tabellenstruktur der Datenbank ändert, ist nur DAO betroffen.

  1. ** Unbekannte SQL-Programmierer können auf die Persistenzschicht zugreifen, ohne SQL zu kennen. ** **.

→ Wenn Sie nach dem Herstellen einer Verbindung zur Datenbank die Verbindung trennen möchten, müssen Sie die ** close-Methode ** für das zum Zeitpunkt der Verbindung erfasste Verbindungsschnittstellenobjekt verwenden. Wenn Sie jedoch vergessen, es zu schließen ** Garbage Collector ** Schließt automatisch die Verbindung, sobald das Objekt zerstört wird, und die Qualität (Zuverlässigkeit) wird aus Sicht des gesamten Systems verbessert. ** Dies ist jedoch der Fall, wenn Sie einen Fehler machen und die Verbindung zur Datenbank, die Sie nicht mehr verwenden, sofort trennen sollten.

Verweise

http://qune.jp/archive/001266/index.html https://ts0818.hatenablog.com/entry/2017/07/10/223553 https://techacademy.jp/magazine/19443

Recommended Posts