Estou criando um recurso de pool de conexão JDBC para o GlassFish, usando o Admin Console do servidor.
Um dos campos na página para criar o pool é rotulado como ‘Tipo de recurso’. Este campo tem quatro valores possíveis: javax.sql.DataSource, javax.sql.XADataSource, javax.sql.ConnectionPoolDataSource e javax.sql.Driver, mas o texto de ajuda do ‘assistente’ do pool de conexões Create JDBC não possui muita informação sobre as vantagens e desvantagens dessas escolhas.
Quando solicitado a escolher um tipo de recurso que devo escolher?
Eu estou indo para se conectar a um servidor MySQL local. Seria bom obter uma explicação das diferenças entre as opções na lista suspensa.
Abaixo estão os cenários em que você precisaria de cada um dos tipos de resources listados. Espero que isto ajude.
DataSource DataSource Um object DataSource é uma fábrica de objects Connection. Ao usar o DataSource simples, o appserver usa seu próprio pool em vez de nativo.
ConnectionPoolDataSource Um object ConnectionPoolDataSource é uma fábrica de objects PooledConnection. ConnectionPoolDataSource é usado para fornecer access ao PooledConnection, que implementa o pool nativo pelo driver JDBC. Nesse caso, o servidor de aplicativos pode implementar o conjunto de conexões usando essa interface nativa. Consulte a API Java para saber o que é um PooledConnection … Um ConnectionPoolDataSource pode usar uma implementação de terceiros para pooling – tanto quanto eu sei para o Tomcat, por exemplo, o pool de conexão DBCP é usado.
XADataSource Você precisa de um XADataSource se você deseja executar uma transação distribuída. Você deve usar XADataSource em vez de DataSource se o aplicativo