Business Objects represent the data client. They are the objects that need access to the datasource to obtain and store data. Data Access Objects abstract the relying data access implementation for the business objects to enable transparent access to the datasource. The business objects also handle data store and load operations to the Data Access Objects. A DataSource shows a database such as a XML repository, relational database, flat file, mainframe system etc. Data Domain Objects or Transfer Objects transfer data between data access objects and client.
A typical DAO defined has the following components: