Utilizei o pool do postgres, org.postgresql.ds.PGPoolingDataSource; porem li que não é uma boa pratica utilizar o pool do postgres desta forma, e sim implementar no tomcat ou servidor que esteja utilizando, teria outra forma além dessas?
Utilizei o pool do postgres, org.postgresql.ds.PGPoolingDataSource; porem li que não é uma boa pratica utilizar o pool do postgres desta forma, e sim implementar no tomcat ou servidor que esteja utilizando, teria outra forma além dessas?
Oi Marcos,
há uma alternativa: Vc pode usar um Datasource fornecido pelo servidor de aplicação. Nesse caso a aplicação fará apenas um lookup do Datasource e toda criação do pool/conexão fica no cargo do servidor.
A ideia aqui é separar melhor as responsabilidades. A aplicação não deveria saber da onde vem a conexão nem quais são as configurações concretas do pool, isso faz parte do servidor de aplicação. Assim vc pode alterar as configuração sem mexer na aplicação.
Eu pessoalmente não vejo muita vantagem, nem gosto muito de lookups do datasource. A sua aplicação se torna menos portável e mais difícil de testar pois sempre depende do servidor. Eu ficaria com a configuração na aplicação, que é mais transparente pra quem desenvolve.
Abs
Ola nico... primeiramente muito obrigado... Fiz da seguinte maneira .... criei o dataSource no context da aplicação, declarei o recurso no web.xml.... e cria a conexão no java da seguinte maneira:
InitialContext initCtx = new InitialContext();
DataSource ds = (DataSource) initCtx.lookup( "java:/comp/env/jdbc/zonemanetostantonio" );
Oque acha deste método??? ..... Abs
Oi Marcos,
é isso mesmo, fazendo lookup usando o InitialContext
!
Se vc estiver utilizando um container como Spring, EJB ou CDI pode até delegar esse trabalho pra eles. Ai nem precisa fazer o lookup pois o container já fará.
abs