实现登录拦截器

This commit is contained in:
F嘉阳
2018-02-05 20:14:12 +08:00
parent 8e4fde4e4f
commit c048cc2358
7 changed files with 96 additions and 7 deletions

View File

@@ -0,0 +1,31 @@
package com.fjy.spring.interceptor;
import com.fjy.spring.constant.GlobalConstant;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("preHandle");
Object user = request.getSession().getAttribute(GlobalConstant.USER_SESSION_KEY);
if (user==null){
response.sendRedirect("/cms/index");
return false;
}
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
System.out.println("postHandle");
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
System.out.println("afterCompletion");
}
}

View File

@@ -0,0 +1,33 @@
package com.fjy.spring.interceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.PathMatchConfigurer;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class WebAppConfig implements WebMvcConfigurer {
/**
* 注册拦截器
* @param registry
*/
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/home/**");
}
/**
* 排除静态资源
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/cms/js/**").addResourceLocations("classpath:/js/");
registry.addResourceHandler("/cms/css/**").addResourceLocations("classpath:/css/");
registry.addResourceHandler("/css/**").addResourceLocations("classpath:/css/");
registry.addResourceHandler("/cms/fonts/**").addResourceLocations("classpath:/fonts/");
registry.addResourceHandler("/cms/images/**").addResourceLocations("classpath:/images/");
}
}