DAO e injeção de dependência, conselhos?
Esta é a primeira vez que estou usando o padrão DAO. Pelo que eu tenhole até agora, a implementação desse padrão me ajudará a separar meu código de chamada (controlador) de qualquer implementação de persistência - exatamente o que eu quero; isto é, não quero ser reestruturado para o uso de qualquer banco de dados em particular ou bibliotecas de terceiros.
Estou criando um código de teste (no estilo TDD) usando MongoDB e morphia (como exemplo), com os morphia fornecidosBasicDAO
classe
Até onde eu sei, estendendoBasicDAO<T, V>
requer um construtor que aceite objetos Morphia e Mongo; esses são tipos muito específicos (de terceiros) que eu realmente não quero flutuar fora da própria classe DA
Como posso ter uma arquitetura mais conectável? Com isso, quero dizer, o que devo considerar para poder configurar meu aplicativo para usar um DAO específico com argumentos de configuração específicos, externos à fonte real?