A implementação de DataSource no Derby significa que este suporta JNDI; como um gerenciador de recursos, permite que o banco de dados receba nome e seja registrado no servidor JNDI. Permite ao aplicativo que faz a chamada acessar o banco de dados pelo nome (como uma fonte de dados), em vez de através de uma URL de conexão com o banco de dados.
O estabelecimento de uma conexão com o banco de dados pode ser uma operação relativamente dispendiosa em ambientes cliente/servidor. O estabelecimento da conexão uma vez, seguida pela utilização da mesma conexão por várias requisições, pode melhorar muito o desempenho do banco de dados.
A implementação do Derby de ConnectionPoolDataSource e PooledConnection permite a um servidor de pool de conexões manter um conjunto de conexões com o gerenciador de recursos (Derby). Em um ambiente incorporado as conexões são muito menos dispendiosas, tornando o pool de conexões desnecessário.
Uma XAConnection produz um XAResource, e durante o seu tempo de vida várias Connection. Permite transações distribuídas.
Um XADataSource é simplesmente um ConnectionPoolDataSource que produz XAConnection.
Define a propriedade para criar o banco de dados na próxima conexão. O argumento cadeia de caracteres deve ser "create".
Define a propriedade para parar o banco de dados. Pára o banco de dados na próxima conexão. O argumento cadeia de caracteres deve ser "shutdown".