DAO и внедрение зависимостей, совет?

Я впервые использую шаблон DAO. Из того, что я прочитал до сих пор, реализация этого шаблона поможет мне отделить мой вызывающий код (контроллер) от любой реализации персистентности - именно то, что я хочу; то есть я не хочу, чтобы меня ограничивали использованием какой-либо конкретной базы данных или сторонних библиотек.

Я создаю тестовый код (в стиле TDD), используя MongoDB и morphia (в качестве примера), с предоставленным morphia классом BasicDAO .

Насколько я могу судить, для расширения BasicDAO требуется конструктор, принимающий объекты Morphia и Mongo; это очень специфические (сторонние) типы, которые мне действительно не нужны, вне самого класса DAO.

Как я могу получить больше подключаемой архитектуры? Под этим я подразумеваю, что мне следует изучить, чтобы настроить мое приложение для использования определенного DAO с конкретными аргументами конфигурации, внешними по отношению к фактическому источнику?

5
задан wulfgarpro 16 November 2011 в 04:32
поделиться