Это - действительно странная/необычная конфигурация в SVN, даже я думаю, что это далеко от того, чтобы быть "хорошей практикой" вообще, так или иначе, я предполагаю, что Вы могли сделать что-то как:
Удача
In Struts, application Controller layer code/functionality is split into two parts:
ActionServlet
with RequestHandler
Action
classesActionServlet
acts like FrontController pattern.
Image from this OnJava article.
ActionServlet
- это контроллер IMO.
В более широком смысле, ActionServlet
вместе с RequestProcessor
и Действие
и информацию об инициализации из struts-config.xml
можно было бы назвать контроллером в приложении struts.
Класс действия struts фактически является Контроллером, поскольку он определяет, что должно произойти дальше при обработке запроса (из браузер). У класса Action есть метод execute, который содержит логику контроллера. Класс Action - хороший пример использования Command Pattern .
Файл struts-config.xml содержит информацию о маршрутизации, которая определяет, к какому контроллеру (классу действий) направляется запрос. Хорошей практикой является иметь более одного контроллера, как правило, у вас есть один контроллер для каждого представления, но это не строгое правило, и у вас может быть более одного контроллера для каждого представления, если представление сложное и имеет различные функции, которые заслуживают разделения задач внутри контроллеров.
Кроме того, будьте осторожны, чтобы не перегружать классы контроллеров бизнес-логикой, это приведет к дублированию кода внутри контроллеров, когда код должен быть перенесен в бизнес-классы на уровне модели вашего Приложение MVC.