Olá,
Não sei se estou certo mas o EJB ainda é um padrão utilizado atualmente. E ele consiste, basicamente, em fazer com que seus DAOs sejam instanciados e utilizados automaticamente pelo servidor de aplicação. Certo ?
Com isso ele inverte o controle, certo ?