牛客网中级项目学习笔记-拦截器获取用户信息

本文介绍了如何在Spring Boot项目中使用拦截器HandlerInterceptor进行登录拦截和用户信息获取。详细阐述了preHandle、postHandle和afterCompletion三个关键方法的作用,并通过实例展示了如何在preHandle方法中判断用户登录状态,将用户信息存储到本地线程,以供后续Controller使用。
摘要由CSDN通过智能技术生成

拦截器HandlerInterceptor

拦截器可拦截前端发过来的请求,可用于登录拦截、获取用户或者权限校验。HandlerInterceptor方法介绍:

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

	void postHandle(
			HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView)	throws Exception;

	void afterCompletion(
			HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)	throws Exception;

preHandle:在业务处理器处理请求之前被调用。预处理,可以进行编码、安全控制、权限校验等处理;
postHandle:在业务处理器处理请求执行完成后,生成视图之前执行。后处理(调用了Service并返回ModelAndView,但未进行页面渲染),有机会对视图ModelAndView进行修改;
afterCompletion:在DispatcherServlet完全处理完请求后被调用,可用于清理资源等,如把线程中的本地变量删除。
在preHandler方法中return false;和return true;的区别是允不允许进入controller层,即return true是可继续请求,return false是拦截请求

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值