Перехватчик AOP, предложенный в других ответах, является перебором конфигурации.
Подобная функциональность может быть достигнута с помощью аннотации @ ModelAttribute . Доступна с весны 2.5. Методы, аннотированные с использованием @ModelAttribute
, должны генерировать параметры для модели представления. Эти методы вызываются перед каждым аннотированным методом с использованием @RequestMapping
.
Кажется, это работает, если аннотированный метод ничего не возвращает (void-метод). В этом случае это работает как некая мнимая аннотация «BeforeEveryRequest». Это выглядит так:
@ModelAttribute
public void tagController(HttpServletRequest request) {
request.setAttribute(VERSION_PARAMETER, version());
}
UPDATE:
Есть небольшой побочный эффект. Это добавляет значение модели в модель. Ключ - это строка «void», значение null
.