junior
Как можно предотвратить прямой доступ к JSP странице из браузера
Для предотвращения прямого доступа к JSP-странице из браузера достаточно разместить JSP-файлы в директории WEB-INF, которая защищена контейнером от прямого доступа по HTTP. Доступ к таким страницам возможен только через серверное перенаправление (RequestDispatcher.forward()).
Настройка в web.xml
<servlet>
<servlet-name>Example</servlet-name>
<jsp-file>/WEB-INF/example.jsp</jsp-file>
<init-param>
<param-name>exampleParameter</param-name>
<param-value>parameterValue</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Example</servlet-name>
<url-pattern>/example.jsp</url-pattern>
</servlet-mapping>
Это стандартная практика в MVC-архитектуре: контроллер (сервлет) обрабатывает запрос, формирует модель и перенаправляет на JSP внутри WEB-INF. Пользователь не может обратиться к JSP напрямую, минуя контроллер. В Spring MVC view resolver автоматически ищет шаблоны в WEB-INF/views/.
На собеседовании: ответ одним предложением: поместить JSP в
WEB-INF. Это показывает понимание безопасности и MVC-паттерна.