MvcConfig.java 2.05 KB
package com.qgutech.config;

import com.qgutech.filter.LoginFilter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.*;

/**
 * @author xxx
 * @date 2024/12/17 16:33
 * @description
 */
@Configuration
public class MvcConfig implements WebMvcConfigurer {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
//        super.addViewControllers(registry);
        registry.addViewController("/user/addUser").setViewName("addUser");
    }
    @Bean
    public WebMvcConfigurer webMvcConfigurer(){
        WebMvcConfigurer adapter = new WebMvcConfigurer() {
            @Override
            public void addViewControllers(ViewControllerRegistry registry) {
                registry.addViewController("/").setViewName("login");
                registry.addViewController("/login").setViewName("login");
            }
            // 注册拦截器
            @Override
            public void addInterceptors(InterceptorRegistry registry) {
                InterceptorRegistration interceptorRegistration = registry.addInterceptor(new LoginFilter());
                interceptorRegistration.addPathPatterns("/**");
                interceptorRegistration.excludePathPatterns("/","/login","/user/userLogin","/img/**","/css/**","/js/**");
                interceptorRegistration.excludePathPatterns("/user/login","/user/userLogout","/user/img/**","/user/css/**","/user/js/**");
            }
        };
        return adapter;
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        /**资源路径映射**/
        registry.addResourceHandler("/img/**").addResourceLocations("classpath:/static/img/");
        registry.addResourceHandler("/user/img/**").addResourceLocations("classpath:/static/img/");
        registry.addResourceHandler("/user/css/**").addResourceLocations("classpath:/static/css/");
        registry.addResourceHandler("/user/js/**").addResourceLocations("classpath:/static/js/");
    }
}