Struts - Пример нескольких файлов конфигурации
Многие разработчики любят помещать все связанные с Struts вещи (действия, формы) в один файл конфигурации Struts. Это быстро для начальной разработки, но плохо для будущего обслуживания, и, возможно, разработчики не знают о возможности использования нескольких конфигурационных файлов Struts.
6 лет назад я присоединился к большому проекту разработки Struts, который включает более 20 модулей. К сожалению, предыдущие разработчики поместили все, что связано со Struts (действие, форму и т. Д.), В один файл конфигурации Struts (struts-config.xml). struts-config.xml просто продолжают расти чрезвычайно быстро и, наконец, достигают 20 ++ МБ, каждое обновление этого файла конфигурации займет несколько минут и даже подождите полчаса для одного развертывания отладки в Eclipse IDE. Это серьезная проблема производительности и заставляющая проект задерживать дату производства. Какой хороший опыт разработки Struts.
Пожалуйста, разбейте детали конфигурации Struts на разные модули, Struts может сделать это легко.
Пример нескольких конфигурационных файлов Struts
Это примерная структура проекта для демонстрации.
1. Одиночный модуль
Один модуль поддерживает несколько файлов конфигурации Struts.
page1.jsp
This is Page 1
page2.jsp
This is Page 2
struts-config-1.xml
struts-config-2.xml
В web.xml вы можете разделить несколько файлов конфигурации Struts запятой «,».
web.xml
Maven Struts Examples action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config-1.xml, /WEB-INF/struts-config-2.xml 1 action *.do
Попробуй это
-
http://localhost:8080/StrutsExample/Page1.do
Будет отображен page1.jsp -
http://localhost:8080/StrutsExample/common/Welcome.do
Будет отображена страница page2.jsp
Обе конфигурации Struts являются загруженным свойством.
2. Несколько модулей
Несколько модулей, каждый имеет свои файлы конфигурации Struts.
admin/welcome.jsp
Welcome to admin page
common/welcome.jsp
Welcome to common page
Оба файла «struts-config-admin.xml» и «struts-config-admin.xml» содержат одинаковые настройки, Struts может различать их через значение параметра «config» в web.xml.
В Struts 2 «http://www.example.com/struts2/struts-2-namespace-configuration-example-and-explanation/[Namespace]» является более эффективным способом заменить этот «config parameter »Настройка.
struts-config-admin.xml, struts-config-admin.xml
web.xml
Maven Struts Examples action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config-1.xml, /WEB-INF/struts-config-2.xml config/admin /WEB-INF/struts-config-admin.xml config/common /WEB-INF/struts-config-common.xml 1 action *.do
Попробуй это
«config/admin» будет соответствовать этому шаблону URL -http://localhost:8080/StrutsExample/admin/
«config/common» будет соответствовать этому шаблону URL -http://localhost:8080/StrutsExample/common/
-
http://localhost:8080/StrutsExample/admin/Welcome.do
Будет отображен admin / welcome.jsp -
http://localhost:8080/StrutsExample/common/Welcome.do
Будет отображен общий / welcome.jsp
Каждый модуль имеет собственный файл конфигурации Struts.