Сервлеты - это технология, которая позволяет вызывать код на сервере. HttpServlet - это абстракция, которая позволяет вызывать код на сервере, если вы решите использовать HTTP в качестве протокола связи, который все равно делают все браузеры.
Поэтому, чтобы понять, что происходит, вы должны помнить, что все общение выполненос HTTP (я понимаю, что этот вопрос был задан в образовательных целях, поэтому ответ является образовательным)
Теперь HTTP вводит различные типы запросов, а именно GET, PUT, POST и другие.
HttpServlets решают эту проблему путем введения различных методов переопределения (doGet
, doPost
и т. Д.). Это просто, если клиент, браузер, который отображает форму в этом случае, хочет использовать метод POST (и внутренняя отправка формы), doPost
вызывается в сервлете.
Откуда вы знаете, какойметод используется? Что ж, проще всего нажать F12 в браузере, перейти на вкладку «Сеть» и проверить запросы, и вам сообщат, что это за запрос. Когда вы узнаете , почему на самом деле существуют различные типы запросов, вы узнаете лучше. В этом случае, поскольку вы хотите «отправить» информацию на сервер, которая потенциально может привести к изменениям на сервере, используется метод POST.
Теперь ясно, что вы переопределили неправильный метод, теперь ваш сервлетможет отвечать на запросы, но не имеет ничего общего с почтовыми запросами, следовательно, ошибка. Переопределите doPost
и вы готовы идти