/** * Borrow a new connection. * * @return * @throws SQLException */ public Connection getConnection() throws SQLException { connCount++; if (connCount == Long.MAX_VALUE) { connCount = Long.MIN_VALUE; } Connection conn = null; if (conConfig.isPooled()) { conn = ds.getConnection(); } else { // Open connection directly conn = DriverManager.getConnection( conConfig.getUrl(), conConfig.getUsername(), conConfig.getPassword()); } if (conConfig.isTraced()) { TracedConnection tc = new TracedConnection(connCount, this, conn); conn = tc; connectionList.add(tc); } return conn; }