Некоторые проблемы со struts2

Что такое struts2?

Struts2 — это фреймворк веб-уровня, спроектированный по шаблону MVC, по сути, Struts2 — это большой фильтр, в который мы можем передать все запросы, соответствующие определенным характеристикам в файле web.xml.

Обработка фильтра, затем этот фильтр обращается к файлу конфигурации (обычно /WEB-INF/classes/struts.xml), чтобы назначить каждому запросу отдельное действие для обработки!

Каков принцип работы strurs2?

Принцип работы Struts2 (исходя из понимания вышеприведенной картинки): когда приходит запрос HttpServletRequest, он сначала проходит через фильтр ActionContextCleanUp для очистки среды Action, а затем проходит через другие фильтры, такие как SiteMesh и пользовательские фильтры и т. д., и, наконец, доберитесь до основного фильтра StrutsPrepareAndExecuteFilter Struts2. В это время StrutsPrepareAndExecuteFilter перейдет к ActionMapping, чтобы узнать, существует ли путь действия. Если он существует, он обратится к файлу Struts.xml для создания прокси-сервера действия и выполнить действие. Многие функции Struts2 выполняются перехватчиками Да, поэтому, когда прокси-сервер действия фактически вызывает метод обработки запроса действия, он проходит через перехватчики 1, 2 и 3 перед фактическим вызовом метода действия.После завершения метода действия , он вернет представление, и представление также будет ссылаться на ActionMapping, оно будет ссылаться на шаблон (JSP, FreeMarker), в это время перехватчик снова перехватит (указывая, что перехватчик Struts2 будет перехватывать при входе в действие и возвращая результат, который лучше, чем Filter!), и, наконец, сгенерируйте HttpServletResponse, соответствующий результат!

Мы также видели, что в старой версии все остальные фильтры, которые нам нужны, должны быть размещены перед фильтром Struts2, но теперь у меня есть требование: я хочу сделать что-то в своем фильтре, для которого требуется среда Struts2 (ActionContext), но это необходимо выполнить перед действием Struts2.В это время старая версия фильтра может смотреть только на голубое небо.

Например, пациенту предстоит операция, и операция требует анестезии (кастомный фильтр) и хирургического вмешательства (фильтр Struts2), как следует вводить анестезию?Пациенту нельзя позволять стоять.. Итак, сначала Кровать ( ActionContext) необходимо подготовить, а затем провести анестезию и операцию. В этом истинное значение StrutsPrepareAndExecuteFilter. Его можно разделить на StrutsPrepareFilter и StrutsExecuteFilter. Если в этом нет необходимости, как раньше, мы обычно используем StrutsPrepareAndExecuteFilter.


Что может struts2?

	Struts2 используется не более чем для замены сервлетов. Он может выполнять функции извлечения, передачи и передачи, которые сервлеты должны были выполнять раньше. Struts2 также предоставляет выражения ognl и функции меток struts2. Самое главное — функция перехватчика struts2. Да ~~ аналогично фильтрам сервлетов~~ Нет необходимости устанавливать специальное программное обеспечение, просто импортируйте jar-пакет struts2~~~


Для чего используется struts2?



Каковы преимущества и недостатки struts2?




おすすめ

転載: blog.csdn.net/u014304688/article/details/71159636