Мне нужно создать топлист в нижнем колонтитуле на сайте, который я создаю. Нижний колонтитул создается в шаблоне макета SiteMesh по умолчанию (views/layouts/main.gsp
).
Для создания топлиста необходим доступ к базе данных, поэтому я инкапсулировал всю логику, необходимую для создания топлиста в классе обслуживания (services/FooService
).
Обратите внимание, что, хотя к службам обычно обращаются с уровня контроллера, в этом случае шаблон макета по умолчанию (views/layouts/main.gsp
) - , а не , сгенерированный из контроллера.
- Может ли представление макета (
views/layouts/main.gsp
) получить доступ к классу обслуживания? Как?
- Это правильное проектное решение? Если нет, что является лучшей инкапсуляцией и как мне взаимодействовать с указанной инкапсуляцией из вида компоновки (
views/layouts/main.gsp
)?