したがって、データベースプーリングには、JDBCよりも優れたオプションがあると思いますが、それでも何かが私を夢中にさせています。すべてのサンプルコードで、このようなプーリングを提案しています。
GenericObjectPool connectionPool = new GenericObjectPool(null);
ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(url, un, pw);
PoolableConnectionFactory poolableConnectionFactory =
new PoolableConnectionFactory(connectionFactory, connectionPool, null, "SELECT 1", false, true);
PoolingDataSource dataSource = new PoolingDataSource(connectionPool);
return dataSource;
PoolableConnectionFactoryが作成されるのはなぜですか?使用されることはなく、ソースを見ると、コンストラクターで実際に何かを結び付けたり、独自のプライベート変数を設定する以外に魔法のようなことをしたりすることはわかりません。JDBCサイトはそれらの情報でかなり不可解であり、ソースコードを掘り下げるすべてのことで私は混乱しました。これを行う理由はありますか?どうやら、代わりに、実際に変数に割り当てずに、オブジェクトをnewでインスタンス化することもできますが、それで十分です...さらに混乱します。