2010-11-24 2 views
1

Я только начал работать над проектом struts2. Я видел силу действий в стойках. Я просто хочу знать немного вещейВызывается действие struts2, когда пользователь запрашивает jsp через поисковую систему

1.Когда клиент запрашивает страницу через поисковую систему, сервер направляет запрос через действие, которое отображает jsp? 2. Если ans к вышеуказанному вопросу не является тем, как мы настраиваем все свойства bean в классе действия, требуемом для отображения страницы? 3.Если вопрос с указанным выше вопросом не является тем, как поддерживать конфиденциальность данных, поскольку все перехватчики построены вокруг действия

ответ

5

Если ваши страницы JSP общедоступны, и пользователь переходит к ним напрямую (например, из поисковой системы или закладки), то нет, ваше действие не будет вызываться.

Ваши JSP должны быть размещены в каталоге WEB-INF (например,/WEB-INF/jsp), чтобы пользователи не могли напрямую обращаться к ним. В Struts2 (любое множество других фреймворков MVC) JSP - это только шаблоны для вашего уровня представления и не должны быть доступны напрямую.

Есть несколько замечаний в ответ на один из ответов на Problem with moving JSPs under WEB-INF directory, усиливающее это:

Я не уверен, распорки, но с весной, принят практиком положить в WEB страниц JSP -INF, а затем ваш код просмотра обращается к защищенному JSP. Это также предотвращает прямой HTTP-доступ к вашим JSP, чтобы вы улучшили контроль доступа. - jkf

То же самое касается и Struts. Рекомендуется использовать JSP в папке WEB-INF. В любом случае, я получил свой ответ. - ремесленник

+0

, но тогда, если jsps следует хранить в web-inf, почему книги показывают вне web-inf (я видел, что struts2 в действии держу его, а также в моих преподавателях колледжа, пока преподавание не учитывает его). также, как мы получаем к ним доступ (это похоже на http: // ip: port/proj-name/WEB_INF/xyz.jsp или http: // ip: port/proj-name/xyz.jsp) – SonOfTheEARTh 2010-11-24 15:32:58

3

Принцип работы Struts заключается в том, что он имеет сервлет диспетчера, который считывает путь входящих запросов и решает, какое действие для их отправки, то действие выполняется и переходит в jsp. Таким образом, независимо от того, вызвано ли действие, зависит от того, что URL-адрес клик на клиенте, если это URL-адрес, который сопоставляется с действием в struts, тогда он вызовет действие, иначе нет.

+0

так как я убедиться, что если поисковик направляет кого-то к моему JSP он делает это только через мой поступок? – SonOfTheEARTh 2010-11-24 14:57:29

Смежные вопросы