Everything about Data access object
Abstract interface to a computer database
In software, a data access object (DAO) is a pattern that provides an abstract interface to some type of database or other persistence mechanism. By mapping application calls to the persistence layer, the DAO provides data operations without exposing database details. This isolation supports the single responsibility principle. It separates the data access the application needs, in terms of domain-specific objects and data types, from how these needs can be satisfied with a specific DBMS. Wikipedia →
đź§ Start here: a 6-step reading path
- Read the overview: Data access objectA 5-minute orientation
- Skim a recent paper: Analysis of Different ORM Tools for Data Access Object Tier Generation: A Brief StudyInfluential work since 2022
- Pick up a classic book: Remoting with C# and .NETThe most-reprinted book on the subject
- Read the landmark paper: Adaptive per-user per-object cache consistency management for mobile data access in wireless mesh networksCited 11 times
- Go sideways: Data access layerA closely related topic
- Go sideways: Object–relational mappingA closely related topic
đź“– Definitions
Noun An object in programming that provides an abstract interface to some type of persistence mechanism, providing some specific data operations without exposing details of the persistence layer.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Adaptive per-user per-object cache consistency management for mobile data access in wireless mesh networks
FPGA-based accelerator for YOLOv5 object detection with optimized computation and data access for edge deployment
An Object-Oriented Data Model for Database Modelling, Implementation and Access
The Impact of the Web Data Access Object (WebDAO) Design Pattern on Productivity
A semantic object-oriented data access system
An object-oriented river information system (RIS) for WWW-access to distributed environmental data
Implementation of Data Access Object Pattern in Bookkeeping System Development
Object Caching Design Framework for Improving Data Access Performance in Enterprise Applications
🆕 Influential since 2022
Analysis of Different ORM Tools for Data Access Object Tier Generation: A Brief Study
Improving Remote File Access in Distributed Object Stores by Decoupling Metadata and Data Paths Using NVMe-oF
Desain Aplikasi Daily Reminder Menggunakan Model-View Controller Dan Data Access Object
UACA: Unified Access Control Approach For Heterogeneous Database Based-on Service Data Object
IDORacle: Template-guided data-access mediation for object-level authorization in database-backed applications
📚 Books worth reading
Remoting with C# and .NETDavid Conger · 2003
Special edition using SOAPJohn Paul Mueller, John Mueller · 2001
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
đź”— Related topics
- Data access layer A data access layer (DAL) is a software architectural layer that provides access to data from one or more sources, such as a relational database, NoSQL…
- Object–relational mapping Object–relational mapping (ORM, O/RM, and O/R mapping tool) in computer science is a programming technique for converting data between a relational database…
- Object–relational impedance mismatch Object–relational impedance mismatch is a set of difficulties going between data in relational data stores and data in domain-driven object models. Relational…
- Apache iBATIS iBATIS is a persistence framework which automates the mapping between SQL databases and objects in Java, .NET, and Ruby on Rails. In Java, the objects…
- Hibernate (framework) Hibernate ORM (or simply Hibernate) is an object–relational mapping tool for the Java programming language. It provides a framework for mapping an object-orient…
- Active record pattern In software engineering, the active record pattern is an architectural pattern. It is found in software that stores in-memory object data in relational…
- Jakarta Persistence Jakarta Persistence, also known as JPA (abbreviated from the former name Java Persistence API) is a Jakarta EE application programming interface specification…
- Data mapper pattern In software engineering, the data mapper pattern is an architectural pattern. It was named by Martin Fowler in his 2003 book Patterns of Enterprise Application…