Кроме web.xml, где вы можете указать вашему веб-приложению сопоставлять запросы с сервлетом? - PullRequest
0 голосов
/ 01 мая 2018

Я новичок в Java Web Dev. Я провел свое исследование, но все еще не мог понять это самостоятельно.

Я пытаюсь проанализировать проект, он объединяет весну, распорки и спящий режим. Spring для POJO и разработки базовых приложений. Похоже, что для обработки запросов используются распорки, а для проекта используется более «веб-часть», в то время как hibernate вместе с hql используется для взаимодействия с базами данных.

Мне было очень, очень любопытно, как работает поток информации, особенно для почтового метода. В результате длительных, но полезных исследований выяснилось, что после выхода из туннеля TLS / SSL расшифрованные запросы http (расшифрованные, так что часть "s", вероятно, больше не существует, lol) (которые являются текстами ascii) будут отправлены java-объекты (создаются из java-классов, вероятно, скомпилированы, конечно) контейнер. И эти объекты обычно называют сервлетами (поправьте меня, если я ошибаюсь).

Загадочная часть всплывает, когда я пытаюсь понять, как контейнер решает, к какому сервлету он обращается с запросами. Опять же при исследовании выясняется, что он обычно обрабатывается конфигурационным файлом с именем web.xml, но странным образом я не смог найти ни одного тега в этом файле, как это должно быть, не говоря уже о сервлете с именем, соответствующим «цели». "имя, указанное в свойстве action, показано ниже:

<form action="<%=context %>/handler/register"  method="post">

Тем не менее весь проект прекрасно работает на сервере Tomcat. единственный вывод, который я могу сделать, состоит в том, что должны быть другие способы настройки «контейнера объектов Java» на сервере Tomcat для обработки пользовательских запросов. Что они? / Что это?

Также в моем понимании может быть много неправильных представлений, например вся часть java-class-object, поправьте меня, если я ошибаюсь, вы были бы так добры.

1 Ответ

0 голосов
/ 01 мая 2018

Начиная с версии 3.0 спецификации сервлета, вы также можете использовать аннотации, чтобы сообщить серверу, где находятся ваши сервлеты.

В коде вы ищете что-то вроде:

@WebServlet("/handler/register")
public class SomeRandomServlet extends HttpServlet
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...