Data access object: Difference between revisions

Content deleted Content added
m References: clean up WP:TEMPLATECAT and general fixes
change object to pattern
Line 1:
{{About|the software design pattern|the Microsoft library|Jet Data Access Objects}}
 
In [[computer software]], a '''data access object''' ('''DAO''') is ana [[Object (computer science)|object]]pattern that provides an abstract [[Interface (computer science)|interface]] to some type of [[database]] or other persistence mechanism. By mapping application calls to the persistence layer, the DAO provides some specific data operations without exposing details of the database. This isolation supports the [[single responsibility principle]]. It separates what data access the application needs, in terms of ___domain-specific objects and data types (the public interface of the DAO), from how these needs can be satisfied with a specific [[Database Management System|DBMS]], database schema, etc. (the implementation of the DAO).
 
Although this [[design pattern]] is equally applicable to most programming languages, most types of software with persistence needs, and most types of databases, it is traditionally associated with [[Java Platform, Enterprise Edition|Java EE]] applications and with relational databases (accessed via the JDBC API because of its origin in Sun Microsystems' best practice guidelines<ref>