Olá pessoal!
Seguinte, tenho uma aplicação que possui uma interface com os métodos CRUD. Nesta aplicação algumas classes que precisam inserir,deletar,etc implementam essa interface, até aqui sem problemas. Exemplo: UsuarioDAO e assim por diante.
Minha dúvida é quando tenho que realizar consultas complexas que envolvem mais de uma tabela do banco para alimentar um relatório, onde “coloco a sql”, uma vez que essa consulta envolve mais de uma tabela e consequentemente mais de uma classe POJO.
Gostaria da opinião de vocês em relação a isso. Desde já agradeço pela atenção. 
obs: Estou usando jdbc puro.