Лучший способ отловить исключения Zend_DB в уже существующем коде? - PullRequest
0 голосов
/ 17 января 2012

Мне нужно отлавливать исключения Zend_DB во всех местах существующего кода. Что было бы лучшим способом и местом, чтобы сделать это?

Один утомительный способ, который я считаю, заключается в том, чтобы обернуть весь код запроса в блок try catch, но в нескольких файлах так много запросов. Поэтому ищем лучший и альтернативный вариант.

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 17 января 2012

Для меня ключом является комментарий @ububaba к вашему вопросу: ловить и делать что?

Самое простое, что вам нужно сделать - чтобы вам не приходилось копаться в коде db / mapper / model / repository / service controller - просто измените ваш ErrorController, чтобы он "делал что-то другое", когда исключением является Zend_Db_Exception.

Но это действительно вещи высшего уровня, последний шанс поймать бесценную вазу Мин, прежде чем она упадет на пол и разлетится на миллион кусочков, вероятно, настолько далеко от брошенной ошибки, что вы упускаете более значимые способы обработки ошибки. В целом, чем ближе вы находитесь к броску, тем лучше вы знаете контекст, в котором произошел этот бросок, который затем информирует / направляет лучший способ справиться с ним (например: пусть он поднимается вверх, ловить / отбрасывать) , ловить / есть и т. д.). В этом смысле, вероятно, есть реальная выгода в объединении небольших блоков в блоки try / catch.

Просто мысли вслух. YMMV.

...