请求执行如下图:

springmvc基于拦截器的身份验证

需求:拦截未登录的用户访问订单模块。

1.新建LoginInterceptor实现HandlerInterceptor接口(org.springframework.web.servlet.HandlerInterceptor)

package com.kye.Interceptors;

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

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import com.kye.java.User;
import com.kye.utils.Utils;

public class LoginInterceptor implements HandlerInterceptor {

	public boolean preHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler) throws Exception {

		String token = request.getParameter("token");
		User user = Utils.getUserByToken(token);
		if (user == null) {
			response.sendRedirect("/unlogin");
			return false;
		}
		return false;
	}

	public void postHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler,
			ModelAndView modelAndView) throws Exception {
		// TODO Auto-generated method stub

	}

	public void afterCompletion(HttpServletRequest request,
			HttpServletResponse response, Object handler, Exception ex)
			throws Exception {
		// TODO Auto-generated method stub

	}

}

2.在springmvc.xml中配置

<mvc:interceptors>
		<mvc:interceptor>
			<mvc:mapping path="/order/*" />
			<bean class="com.kye.Interceptors.LoginInterceptor"></bean>
		</mvc:interceptor>
	</mvc:interceptors>

 

相关文章:

  • 2021-07-25
  • 2021-12-12
  • 2021-04-26
  • 2022-12-23
  • 2021-07-01
  • 2021-09-05
  • 2021-07-03
  • 2021-09-30
猜你喜欢
  • 2022-12-23
  • 2021-05-04
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-21
相关资源
相似解决方案