ServletContext.Listener para banco de dados

Estou dando os primeiros passos com JAVA, estava usando o padrão MVC bem simples com Classes (Model), JSP (View) e Servlet(Controller) utilizando o requestDispatcher.

Porém, ate o momento estou utilizando uma classe separada apenas de conexão e utilizando DAO herdando essa classe para cada table do meu bd e recebendo apenas objetos para persistir os dados e agora me deparei com Listener e vi que é legal para se criar uma conexão com bd que pode ser distribuída por toda minha aplicação pelo fato de estar no contexto. Mas gostaria de saber qual a maneira mais aconselhável?.. É melhor Utiliza Listener para esta função ou devo apenas manter como conhecimento para uma futura necessidade?