DAO ist kein Mapping. DAO steht für Data Access Object. Es sieht ungefähr so aus:
%Vor%Für DAO ist JDBC nur ein Implementierungsdetail.
%Vor%Hibernate könnte ein anderer sein.
%Vor%JPA könnte ein anderer sein (für den Fall, dass Sie eine bestehende Legacy-App zu JPA migrieren; für neue Apps wäre es etwas komisch, da JPA für sich genommen eigentlich die DAO ist, mit z Hibernate und EclipseLink als verfügbare Implementierungen).
%Vor% Sie können die UserDAO
-Implementierung wechseln, ohne den Geschäftscode zu ändern, der das DAO verwendet (nur, wenn Sie die Schnittstelle natürlich korrekt codieren).
Für JDBC müssen Sie nur viele Zeilen schreiben, um die gewünschten Informationen zu finden / speichern / löschen, während es bei Hibernate nur ein paar Zeilen sind. Hiberenate als ein ORM nimmt genau diese fiese JDBC-Arbeit von Ihren Händen, unabhängig davon, ob Sie ein DAO verwenden oder nicht.
DAO ist eine Abstraktion für den Zugriff auf Daten, die Idee besteht darin, die technischen Details des Datenzugriffs vom Rest der Anwendung zu trennen. Es kann für jede Art von Daten gelten.
JDBC ist eine API für den Zugriff auf relationale Datenbanken mit Java.
JDBC ist niedriger als ein ORM, es ordnet einige Java-Typen SQL-Typen zu, aber nicht mehr als das, es dauert nur DDL und DML, führt es aus und gibt Ergebnismengen zurück. Es liegt an Ihrem Programm, einen Sinn daraus zu machen.
Tags und Links database hibernate terminology jdbc dao