简单session实现

简单的session校验实现

自己写着玩的一个小demo, 暂存一下

利用拦截器实现

package com.ryh.blog.intecepter;

import org.springframework.core.Ordered;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * @author RYH
 * @description 拦截器用来检查session
 * @date 2020/7/7 0007
 **/
@Component
public class SessionHandler implements HandlerInterceptor, WebMvcConfigurer, Ordered {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        HttpSession session = request.getSession(false);
        if (session == null) {
            String path = request.getContextPath();
            response.sendRedirect(path + "/login");
        }
        return true;
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new SessionHandler())
                .addPathPatterns("/*")
                .excludePathPatterns("/login", "/doLogin");
    }

    @Override
    public int getOrder() {
        return 0;
    }
}

posted @ 2020-08-19 15:16  &傻小子  阅读(100)  评论(0编辑  收藏  举报