2013-02-15 7 views
3

Я просто пытался использовать DataSource из apache commons-dbcp.jar. Для этого я просто скачал один из своих примеров. Все идет нормально. Пример стоять как (this)apache commons | pool или pool2

// Here are the dbcp-specific classes. 
// Note that they are only used in the setupDataSource 
// method. In normal use, your classes interact 
// only with the standard JDBC API 
// 
    import org.apache.commons.pool2.ObjectPool; 
    import org.apache.commons.pool2.impl.GenericObjectPool; 
    import org.apache.commons.dbcp2.ConnectionFactory; 
    import org.apache.commons.dbcp2.PoolingDataSource; 
    import org.apache.commons.dbcp2.PoolableConnectionFactory; 
    import org.apache.commons.dbcp2.DriverManagerConnectionFactory; 

Нет ничего плохого в том, что для вместо импорта из

 import org.apache.commons.pool 

они импортировали из

 import org.apache.commons.pool2 

Ну, за исключением, что у меня ушло минут, добавляя и считывая требуемую флягу, прежде чем я смог понять, что они действительно импортировали другое имя пакета из того, что они предоставили в банке.

Ну, я все еще озадачен, это просто ошибка или какая-то преднамеренная загадочная причина (в этом случае мне хотелось бы знать, и это вопрос).

Комментарий эксперта от apache-commons, пожалуйста?

+0

Вы получили эту работу? – John

ответ

2

Оба DBCP и Pool выпустили версии 2.x. Поскольку в версиях 2.x были разрывы совместимости, имена пакетов были изменены. Изменение имен пакетов позволяет использовать версии 1.x и 2.x в пути к классам. Пользователям предлагается обновить до последних версий 2.x.