Data access object: Difference between revisions

Content deleted Content added
Adding local short description: "Abstract interface to a computer database", overriding Wikidata description "design pattern providing an abstract interface to some type of database or other persistence mechanism, providing data operations to application calls without exposing database details"
mNo edit summary
Line 20:
In the context of the [[Java (programming language)|Java]] programming language, DAO can be implemented in various ways. This can range from a fairly simple interface that separates data access from the application logic, to frameworks and commercial products.
 
Technologies like [[Java Persistence API]] and [[Enterprise JavaBeans]] come built into application servers and can be used in applications that use a Java EE application server. Commercial products such as [[TopLink]] are available based on [[object-relationalobject–relational mapping]] (ORM). Popular open source ORM software includes [[Doctrine (PHP)|Doctrine]], [[Hibernate (Java)|Hibernate]], [[iBATIS]] and JPA implementations such as [[Apache OpenJPA]].
 
== Disadvantages ==
Line 26:
 
== Tools and frameworks ==
* [[ODB (C++)|ODB]] compiler-based [[object-relationalobject–relational mapping]] (ORM) system for C++
* ORMLite: Lightweight [[object-relationalobject–relational mapping]] (ORM) framework in Java for JDBC and Android<ref>{{cite book|last1=Hodgson|first1=Kyle|last2=Reid|first2=Darren|title=ServiceStack 4 Cookbook|publisher=Packt Publishing Ltd|isbn=9781783986576|page=Chapter 4|url=https://books.google.com/books?id=x9hpBgAAQBAJ&q=%22ORMLite%22&pg=PA129|access-date=22 June 2016|language=en|date=2015-01-23}}</ref>
* [[Entity Framework|Microsoft Entity Framework]]
* DBIx::Class [[object-relationalobject–relational mapping]] (ORM) module for [[Perl]]
* TuxORM: Simple [[object-relationalobject–relational mapping]] (ORM) library in Java for JDBC
* [[Persist (Java tool)]] Java-based [[object-relationalobject–relational mapping]] and data access object tool
 
== See also ==
Line 37:
* [[Data access layer]]
* [[Service Data Objects]]
* [[Object-relationalObject–relational mapping]]
 
== References ==