Я хочу закрыть заявление автоматически - PullRequest
0 голосов
/ 11 июля 2011

Я хочу автоматически закрыть заявление.

Я хочу добиться этого с помощью технологии следующих условий.

  • java1.5
  • пружинный каркас2,5

Кажется, что он не закрывается автоматически при настройке по умолчанию, хотя я думаю, что диспетчер транзакций Spring автоматически закрывает оператор.

Я не хочу вызывать close() оператора в максимально возможной степени в методе для удобства обслуживания.

Есть ли способ закрытия оператора?

Кроме того, существует ли официальный сайт или документ, в котором указана причина отсутствия метода закрытия?

Ответы [ 2 ]

0 голосов
/ 14 сентября 2011

Если я правильно понял ваш вопрос, вы можете использовать http://commons.apache.org/dbcp/, чтобы сделать закрытие для вас, насколько я знаю, что это стандарт в любом случае, так что, скорее всего, вы уже используете его, пока вы используетеSpring или JNDI, чтобы обеспечить подключение к вашей базе данных.В вашей конфигурации для соединения с базой данных настройте removeAbandoned = true и removeAbandonedTimeout = 50 Подробнее см. http://commons.apache.org/dbcp/configuration.html (самый нижний блок).Имейте в виду, что вам нужен довольно большой пул соединений, если вы полагаетесь на него для очистки ваших соединений.

К вопросу о том, почему нет метода закрытия: есть.

закрытие соединения закроет все его операторы.закрытие Statement закроет все его ResultSets.

В конце концов, это не очень хороший стиль для этого.Я рекомендую вызывать close () самостоятельно и использовать удаление только для того, чтобы найти места, где вы забыли это сделать, добавив logAbandoned = true

0 голосов
/ 12 июля 2011

Количество кодирования увеличивается, если для всех методов приходится вызывать оператор close (), и существует проблема, заключающаяся в том, что вероятность того, что пропущено, исчезает.делая рамки.По этой причине он хочет как можно больше ограничиться и сделать небольшой метод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...