ServletException или IOException?

... Я никогда не могу выбрать между этими двумя. Я всегда возвращаюсь к коду и переключаюсь между ними.

Когда вы кодируете - скажем, класс Login - из (расширенного) HttpServlet, который поддерживает ServletException и IOException, и вы просто хотите добавить свое исключение (например, NoSuchAlgorithmException, NamingException), чтобы увидеть его на странице вашего приложения позже, через какой вы его выбросите: ServletException или IOException?

PS: я не пытаюсь поймать все возможные NoSuchAlgorithmException, NamingException и т. Д., Потому что я могу пропустить реальную причину, которую я раньше не видел, и неправильно ее обработать или сообщить неправильную информацию пользователю.

2 ответа

Решение

IOException имеет свое значение. IOException должен быть выдан только тогда, когда возникает проблема в операциях ввода-вывода, например, при чтении / записи данных из файла или URL-адреса. Если мне придется сделать выбор между двумя, я выберу ServletExcetion,

Но если есть место для определения лучшей обработки исключений, я бы хотел создать свой собственный класс исключений, например MySystemException простирающийся RuntimeException и обернуть соответствующие исключения как MySystemException и брось это.

Ни один из них, просто наследовать от RuntimeException или другое исключение, которое наследуется от RuntimeException как IllegalArgumentException,

Другие вопросы по тегам