Slim3とは異なりS2DBCP でプーリングされるのは物理コネクション (XAConnection) ではなくて論理コネクション (Connection) ね。あとConnectionEventListenerの仕掛けは使ってない。JDBCの仕様書をぱらっと見る限りSlim3のほうが素直に実装している感じ。 DataSource(実態はDataSourceImplでコネクションプーリングを実現しているConnectionPoolImplの薄いラッパー)#getConnectionが呼ばれるとあとはConnectionPoolImpl#checkOutにおまかせ。 public Connection getConnection() throws SQLException { Connection con = connectionPool.checkOut(); return con; }