2015-02-04 2 views

ответ

2

HandlerInterceptorAdapter Расширение и настроить его:

public class CacheClearingHandlerInterceptor extends HandlerInterceptorAdapter { 

    @Override 
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { 

    if("Y".equals(request.getParameter("clearCache"))) { 
     doCoolStuff(); 
    } 

    return super.preHandle(request, response, handler); 
    } 

} 

В вашем веб-приложения Контекст конфигурации (mvc-dispatcher-servlet.xml):

<mvc:interceptors> 
    <mvc:interceptor> 
     <mvc:mapping path="/**"/> 
     <bean class="com.example.project.CacheClearingHandlerInterceptor"/> 
    </mvc:interceptor> 
</mvc:interceptors> 
0

Используйте этот метод на контроллер:

@RequestMapping(value = "/urlpPath", params="clearCache=Y", method = RequestMethod.GET) 

Params является то, что используется для ограничения URL с этим значением параметра.

+0

Не совсем "глобальный";) –

+0

да право. Благодарю. –

0

Если вы хотите эту функцию для любого запроса, вы можете достичь этого, выполнив фильтр запроса или перехватчик.

Один пример такого поведения вы можете найти в самой весне. LocaleChangeInterceptor, который проверяет параметр lang и изменяет локаль текущего запроса.

Смежные вопросы