Вы можете прочитать о шаблоне DAO в Google, но, как правило, вы создаете один DAO для каждой таблицы или группы связанных таблиц. Я не знаю, что вы подразумеваете под «базой данных». Некоторые люди используют термины таким образом. (Вы обновили свой вопрос, чтобы объяснить «базу данных» Таким образом, вы, как правило, имеют несколько объектов DAO для каждой базы данных по одному в таблице или набор связанных таблиц.).
Так что «Да»
Примечание: Когда я говорю «родственный таблицы "Возможно, мне придется объяснить. Например, если у вас есть таблица счетов и таблица invoice_detail. Строки подробностей, как правило, похожи на строку на бумажном счете-фактуре и имеют внешний ключ обратно к идентификатору счета или номер счета-фактуры в таблице счетов. Есть две таблицы, но у вас, вероятно, будет один DAO для обработки счетов-фактур и связанных с ними деталей. Могут быть методы получения счета-фактуры по номеру счета-фактуры и клиентом, а также по количеству их по дате и, возможно, также для получения всех счетов-фактур в течение месяца, которые имеют конкретный элемент на одной из их подробных строк. Были бы методы создания счета-фактуры и создания всех строк на нем. И так далее. Один DAO, но несколько таблиц.
Строки деталей могут иметь внешние ключи, указывающие на таблицу «детали» с деталями на деталях. Возможно, вам захочется прочитать информацию о деталях и вернуть ее с помощью счета-фактуры, и вы можете просто прочитать части отдельно после того, как прочитаете счет. В последнем случае будет второй DAO, который имеет методы для чтения и, возможно, изменения записей деталей.
В этом примере предполагается, что все они находятся в одной базе данных, будь то MySQL или Oracle.