1、登录页面代码

@GetMapping(value = "/auth/login")
public String login() {
return "login";
}
2、定义拦截器
package com.bw.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* @author 军哥
* @version 1.0
* @description: 登录拦截器
* @date 2024/7/20 11:21
*/
@Component
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//-- 获取用户的session
HttpSession session = request.getSession();
Object user = session.getAttribute("user");
if(user != null) {
System.out.println("用户登录了,放行~~~~~~~~~~~~~~~~~~~~~");
return true;
}
System.out.println("用户没有登录了,拦截~~~~~~~~~~~~~~~~~~~~~");
response.sendRedirect("/auth/login.do");
return false;
}
}
3、在springMVC.xml中注入拦截器

<!-- 登录拦截器 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<!-- 不拦截登录请求-->
<mvc:exclude-mapping path="/auth/**.do"/>
<!-- 不拦截静态资源-->
<mvc:exclude-mapping path="/layui-v2.9.14/**"/>
<bean class="com.bw.config.LoginInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>