当前位置: 首页 > news >正文

数据需求 网站建设大数据技术主要学什么

数据需求 网站建设,大数据技术主要学什么,网站建设公司开发企业北京网站,wordpress首页表单拦截器(Interceptor) 概念:是一种动态拦截方法调用的机制,类似于过滤器。Spring框架中提供的,用来动态拦截控制器方法的执行。 作用:拦截请求,在指定的方法调用前后,根据业务需要执行…

拦截器(Interceptor)

概念:是一种动态拦截方法调用的机制,类似于过滤器。Spring框架中提供的,用来动态拦截控制器方法的执行。

作用:拦截请求,在指定的方法调用前后,根据业务需要执行预先设定的代码。

快速入门

定义拦截器

实现HandlerInterceptor接口,并重写其所有方法。 

@Component
public class LoginInterceptor implements HandlerInterceptor {@Override //目标方法执行前的执行,返回true放行,返回false不放行public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {return HandlerInterceptor.super.preHandle(request, response, handler);}@Override //目标方法执行后执行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);}@Override //视图渲染执行后执行,最后执行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {HandlerInterceptor.super.afterCompletion(request, response, handler, ex);}
}

注册拦截器

@Configuration
public class WebConfig implements WebMvcConfigurer {@AutowiredLoginInterceptor loginInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor).addPathPatterns("/**");}
}

拦截器-拦截路径

拦截路径

含义

举例

/*

一级路径

能匹配/depts,/emps,/login,不能匹配 /depts/1

/**

任意级路径

能匹配/depts,/depts/1,/depts/1/2

/depts/*

/depts下的一级路径

能匹配/depts/1,不能匹配/depts/1/2,/depts

/depts/**

/depts下的任意级路径

能匹配/depts,/depts/1,/depts/1/2,不能匹配/emps/1

拦截器-执行流程

 Filter与Interceptor区别

  • 接口规范不同:过滤器需要实现Filter接口,而拦截器需要实现HandlerInterceptor接口。
  • 拦截范围不同:过滤器Filter会拦截所有的资源,而Interceptor只会拦截Spring环境中的资源。

 登录验证

  • 获取请求url。 判断请求url中是否包含login,如果包含,说明是登录操作,放行。
  • 获取请求头中的令牌(token)。
  • 判断令牌是否存在,如果不存在,返回错误结果(未登录)。
  • 解析token,如果解析失败,返回错误结果(未登录)。
  • 放行。

                                     

Interceptor的实现

@Slf4j
@Component
public class LoginInterceptor implements HandlerInterceptor {@Override //目标方法执行前的执行,返回true放行,返回false不放行public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//获取urlString url = request.getRequestURL().toString();log.info("url路径:{}",url);//获取tokenString token = request.getHeader("token");log.info("token:{}",token);//如果没有Tokenif (!StringUtils.hasLength(token)) {extracted(response);return false;}//解析tokentry {JwtUtils.parseJwt(token);} catch (Exception e) {e.printStackTrace();extracted(response);return false;}return true;}private void extracted(HttpServletResponse response) throws IOException {Result noLogin = Result.error("用户未登录");response.setCharacterEncoding("UTF-8");response.getWriter().write(JSONObject.toJSONString(noLogin));}@Override //目标方法执行后执行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);}@Override //视图渲染执行后执行,最后执行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {HandlerInterceptor.super.afterCompletion(request, response, handler, ex);}
}

配置Interceptor

@Configuration
public class WebConfig implements WebMvcConfigurer {@AutowiredLoginInterceptor loginInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor).addPathPatterns("/**").excludePathPatterns("/login");}
}

测试

 

 

http://www.yidumall.com/news/71051.html

相关文章:

  • 郑州外贸网站建设公司价格免费网页在线客服系统代码
  • 学校门户网站什么意思百度搜索排名靠前
  • 班级网站建设图片企业文化墙
  • 什么是网站链接优化网络营销服务公司有哪些
  • 网站建设技术支持方案竞价恶意点击犯法吗
  • 专业做二手网站互联网营销师培训机构
  • wordpress 空间需求seo标题优化步骤
  • wordpress零基础建站教程资源最多的磁力搜索引擎
  • 百度推广做网站什么价位东莞网站制作
  • 做网站公司赚不赚钱长春网站开发公司
  • 辽中网站建设电商运营方案计划书
  • 网站建设怎么制作网站营销网址
  • 青岛 html5flash设计开发|交互设计|网站建设莆田百度推广开户
  • 网站开发设计项目书搜狗站长工具综合查询
  • 用手机做网站在线生成网页网站
  • 网站建设基本步骤廊坊网络推广公司
  • 南京政府门户网站建设的不足推广营销平台
  • 搭建网站用什么系统比较好用的搜索引擎
  • 做网站把自己做死网络营销过程步骤
  • 标签系统做的好的网站百度的营销策略
  • 百度在哪些城市有分公司百度app优化
  • 深圳哪个网站好推广一点搜索引擎优化seo专员招聘
  • 东莞网站制作百年市场调研分析报告范文
  • 网站做nat映射需要哪些端口谷歌搜索引擎怎么才能用
  • psd设计网站模板深圳做网站
  • 如何更好的建设和维护网站seo网站优化做什么
  • 网站开发服务费计入什么科目网络营销的特点分别是
  • 网站代码如何导入百度游戏中心
  • e建网室内设计官网宁波seo网站服务
  • 虹口网站制作学市场营销后悔死了