нам нужно вызывать какой-либо метод для dbcp.BasicDataSource или jndi datasource (я использую jboss), чтобы вернуть соединение после того, как с ним покончено?
Нет, просто позвоните Connection.close().Если это соединение было получено из объединенного источника данных, то оно фактически не будет закрыто, оно будет просто возвращено в пул.
Connection.close()