См. ниже компоненты шаблона проектирования Dao:
Образ объекта доступа к данным или шаблон DAO используются для разделения доступа к API с низкими уровнями данных или операций с бизнес-сервисами высокого уровня. Ниже приведены участники шаблона объектов доступа к данным.
Интерфейс объекта доступа к данным - этот интерфейс определяет стандартные операции, которые должны выполняться на объектах модели.
Конкретный класс объекта доступа к данным. Этот класс реализует интерфейс выше. Этот класс отвечает за получение данных из источника данных, который может быть базой данных /xml или любым другим механизмом хранения.
Объект модели или объекта значения. Этот объект является простым POJO, содержащим методы get/set для хранения данных, полученных с использованием класса DAO.
Зачем нам нужен ИНТЕРФЕЙС, когда у нас есть конкретный класс, и почему мы не можем использовать его напрямую? Это может быть наивный вопрос, но, пожалуйста, помогите мне понять это. Не только в шаблоне проектирования DAO, но и в других шаблонах проектирования, использование INTERFACE немного запутанно. Я согласен, что это связано с повторяемостью кода и уменьшением сцепления. Но может кто-нибудь объяснить это немного дальше.