1. 程式人生 > >擴展默認的spirngMVC功能

擴展默認的spirngMVC功能

tom class 自定義 com log imp post hand spirng

目錄

  • 擴展默認的spirngMVC功能
    • 步驟
    • 代碼

擴展默認的spirngMVC功能

步驟

1、使用@Configuration標註為配置類
2、實現WebMvcConfigurer接口
3、 根據需要實現接口方法

代碼

CustomMvcConfig

@Configuration
public class CustomMvcConfig implements WebMvcConfigurer {

    //自定義攔截器
    @Override
    public void addInterceptors(InterceptorRegistry registry) {

        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**").excludePathPatterns("/test1");

    }

    //訪問/showLogin時跳轉到login視圖
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {

        registry.addViewController("/showLogin").setViewName("login");
    }

    
}

MyInterceptor

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

        System.out.println("MyInterceptor.preHandle");
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
            ModelAndView modelAndView) throws Exception {
        System.out.println("MyInterceptor.postHandle");
    }

    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
            throws Exception {
        System.out.println("MyInterceptor.afterCompletion");
    }
}

擴展默認的spirngMVC功能