WS RESTful:
@Path("contatos")
public class ContatoResource {
@Inject // CDI
private IContatoService service;
// @GET, @POST, @PUT, @DELETE ...
}
Service:
public class ContatoService implements IContatoService {
@Inject // CDI
private IContatoDao dao;
// salvar(), remover(), buscar() ...
}
DAO:
public class ContatoDao extends GenericDao<Contato> implements IContatoDao {
// vazio.
// apenas estende as funcionalidades do DAO Genérico (à princípio)
}
Me incomoda um pouco esse esquema:
- O recurso chama a service que chama o DAO que por sua vez, estende um DAO Genérico que, enfim, contém as operações finais.
Digo, este é mesmo o caminho correto? Seria “errado” injetar o DAO direto no endpoint?