No padrão OpenSessionInView, foi visto que se abre uma conexão por cliente conectado. Quando não se está usando esse padrão, como é feito o gerenciamento de conexões?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
No padrão OpenSessionInView, foi visto que se abre uma conexão por cliente conectado. Quando não se está usando esse padrão, como é feito o gerenciamento de conexões?
Bem, na verdade o que rola é seguinte. No Padrão OpenSessionInView, não é aberta uma conexão por cliente, mas sim, uma conexão por request, e a mesma é fechada ao final da requisição.
O "gerenciamento de conexões" não é feito nesse momento. O gerenciamento das conexões nesse curso é realizado através de um Pool de conexões, esse sim é responsável por otimizar o número de conexões que serão abertas.
Outra estratégia(padrão) de gerenciamento de conexões é o Singleton, que cria um conexão única para todos os clientes.
OK, mas quando não se está usando o OpenSessionInView, em que momento são criadas e fechadas a s conexões? É aberta quando eu instancio uma EntityManager e é fechada quando o EntityManager é fechado, correto?
Correto.