Я экспериментирую с BoneCP как альтернативу объединения соединений с DBCP. Я добавил bonecp-0.8.0rc-1.jar
к моему выполнения классам и копирования-н-вставить код из их пример страницы в мой тестовый драйвер:Как создать настраиваемое предупреждение компилятора в Eclipse?
Connection connection = null;
BoneCP connectionPool;
try {
Class.forName(config.getDatabaseLogger().getJDBCDriver());
BoneCPConfig boneConfig = configureBoneCP(config);
connectionPool = new BoneCP(boneConfig);
connection = connectionPool.getConnection(); // fetch a connection
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
На линии, которая гласит:
connectionPool = new BoneCP(boneConfig);
Затмение (Juno) дает мне предупреждение компилятора:
утечки ресурсов: 'connectionPool' это никогда не закрывается
Затем он дает мне опцию «Добавить ресурс @SuppressWarnings 'в newConnectionManager» (newConnectionManager()
ссылается на класс, который содержится в нем).
Как это возможно?!?! Как Eclipse знает что-нибудь о объекте BoneCP
и как он знает, что он должен быть закрыт? Это какое-то «пользовательское предупреждение», которое поставляется с библиотекой BoneCP? Если да, то каким образом я могу добавить/аннотировать код в свои собственные проекты, чтобы помочь разработчикам нижестоящих программ, чтобы они неправильно использовали мои библиотеки? Заранее спасибо!
У вас есть Javadoc для BoneCp? – NINCOMPOOP
Я сделал то же самое, но я не могу воспроизвести его. – johnchen902