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

门户网站底部淘宝关键词top排行榜

门户网站底部,淘宝关键词top排行榜,javaee是做网站的吗,wordpress负载均衡SpringBoot中过滤器与拦截器的区别 过滤器和拦截器的区别: ①拦截器是基于java的反射机制的,而过滤器是基于函数回调。 ②拦截器不依赖与servlet容器,过滤器依赖与servlet容器。 ③拦截器只能对action请求起作用,而过滤器则可以对…

SpringBoot中过滤器与拦截器的区别
过滤器和拦截器的区别:
①拦截器是基于java的反射机制的,而过滤器是基于函数回调。
②拦截器不依赖与servlet容器,过滤器依赖与servlet容器。
③拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。
④拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。
⑤在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次。
⑥拦截器可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在拦截器里注入一个service,可以调用业务逻辑。

AsyncHandlerInterceptor与OncePerRequestFilter的区别

过滤器中OncePerRequestFilter的用法
过滤器是基于函数回调,
过滤器依赖与servlet容器,
过滤器则可以对几乎所有的请求起作用,
过滤器不能访问action上下文、值栈里的对象
过滤器只能在容器初始化时被调用一次
过滤器不可以获取IOC容器中的各个bean

/*** token过滤器 验证token有效性   (正在运行启作用) @Order(1)为多个过滤器的排序号*/
@Component
@Order(1)
public class JwtAuthenticationTokenFilter extends OncePerRequestFilter {@Autowiredprivate TokenService tokenService;@Overrideprotected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain)throws ServletException, IOException {LoginUser loginUser = tokenService.getLoginUser(request);if (StringUtils.isNotNull(loginUser) && StringUtils.isNotEmpty(SecurityUtils.getToken())) {tokenService.verifyToken(loginUser);UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(loginUser, null, null);authenticationToken.setDetails(new WebAuthenticationDetailsSource().buildDetails(request));SecurityContextHolder.getContext().setAuthentication(authenticationToken);}chain.doFilter(request, response);}
}

拦截器AsyncHandlerInterceptor的用法
拦截器是基于java的反射机制的
拦截器不依赖与servlet容器
拦截器只能对action请求起作用
拦截器可以访问action上下文、值栈里的对象
在action的生命周期中,拦截器可以多次被调用
拦截器可以获取IOC容器中的各个bean

WebMvcConfig.java
必须标注@Configuration才启作用

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;/*** 拦截器配置*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer
{/** 不需要拦截地址 */public static final String[] excludeUrls = { "/system/login", "/system/logout", "/system/refresh", "/system/ping" };@Overridepublic void addInterceptors(InterceptorRegistry registry){registry.addInterceptor(getHeaderInterceptor()).addPathPatterns("/**").excludePathPatterns(excludeUrls).order(-10);}/*** 自定义请求头拦截器*/public HeaderInterceptor getHeaderInterceptor(){return new HeaderInterceptor();}
}

HeaderInterceptor.java

import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.AsyncHandlerInterceptor;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** 自定义请求头拦截器,将Header数据封装到线程变量中方便获取* 注意:此拦截器会同时验证当前用户有效期自动刷新有效期*/
public class HeaderInterceptor implements AsyncHandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {if (!(handler instanceof HandlerMethod)) {return true;}SecurityContextHolder.setTenantId(ServletUtils.getHeader(request, SecurityConstants.DETAILS_TENANT_ID));SecurityContextHolder.setDevice(ServletUtils.getHeader(request, SecurityConstants.DETAILS_DEVICE));SecurityContextHolder.setUserId(ServletUtils.getHeader(request, SecurityConstants.DETAILS_USER_ID));SecurityContextHolder.setUserName(ServletUtils.getHeader(request, SecurityConstants.DETAILS_USERNAME));SecurityContextHolder.setUserKey(ServletUtils.getHeader(request, SecurityConstants.USER_KEY));String token = SecurityUtils.getToken();if (StringUtils.isNotEmpty(token)) {LoginUser loginUser = AuthUtil.getLoginUser(token);if (StringUtils.isNotNull(loginUser)) {AuthUtil.verifyLoginUserExpire(loginUser);SecurityContextHolder.set(SecurityConstants.LOGIN_USER, loginUser);}}return true;}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)throws Exception {SecurityContextHolder.remove();}
}

文章转载自:
http://dinncoescribe.ydfr.cn
http://dinncosaharian.ydfr.cn
http://dinncoprofluent.ydfr.cn
http://dinncoquantize.ydfr.cn
http://dinncohateless.ydfr.cn
http://dinncopentasyllable.ydfr.cn
http://dinncofastness.ydfr.cn
http://dinncocatgut.ydfr.cn
http://dinncotweeze.ydfr.cn
http://dinncoargy.ydfr.cn
http://dinncogigacycle.ydfr.cn
http://dinncoossiferous.ydfr.cn
http://dinncomoonshiny.ydfr.cn
http://dinncoprecessional.ydfr.cn
http://dinncoinexpectant.ydfr.cn
http://dinncounderwritten.ydfr.cn
http://dinncofinner.ydfr.cn
http://dinncofiguratively.ydfr.cn
http://dinncohomebound.ydfr.cn
http://dinnconutpick.ydfr.cn
http://dinncoprier.ydfr.cn
http://dinncopolypi.ydfr.cn
http://dinncolavishness.ydfr.cn
http://dinncodigenetic.ydfr.cn
http://dinncocholecystagogue.ydfr.cn
http://dinncohelpmate.ydfr.cn
http://dinncoeyewash.ydfr.cn
http://dinncoorchotomy.ydfr.cn
http://dinncosanguimotor.ydfr.cn
http://dinncoalonso.ydfr.cn
http://dinncochupatti.ydfr.cn
http://dinncoicae.ydfr.cn
http://dinncopass.ydfr.cn
http://dinncoturcocentric.ydfr.cn
http://dinncoarrowy.ydfr.cn
http://dinncohandlebar.ydfr.cn
http://dinncosentencehood.ydfr.cn
http://dinncobilicyanin.ydfr.cn
http://dinncoplasterboard.ydfr.cn
http://dinncooenology.ydfr.cn
http://dinncoturkophile.ydfr.cn
http://dinncooccupationist.ydfr.cn
http://dinncooviduct.ydfr.cn
http://dinncosupportably.ydfr.cn
http://dinncoapproximatively.ydfr.cn
http://dinncoverse.ydfr.cn
http://dinncofoveolate.ydfr.cn
http://dinnconortherly.ydfr.cn
http://dinncocofacter.ydfr.cn
http://dinncogunning.ydfr.cn
http://dinncooutseg.ydfr.cn
http://dinncoclearstory.ydfr.cn
http://dinncovariation.ydfr.cn
http://dinncoschtick.ydfr.cn
http://dinncoimprovisator.ydfr.cn
http://dinncodumbness.ydfr.cn
http://dinncoannexment.ydfr.cn
http://dinncoomophagy.ydfr.cn
http://dinncofluster.ydfr.cn
http://dinncorebuttal.ydfr.cn
http://dinncooft.ydfr.cn
http://dinnconjord.ydfr.cn
http://dinncoineligibility.ydfr.cn
http://dinncocrocus.ydfr.cn
http://dinncoporrect.ydfr.cn
http://dinnconeurochemist.ydfr.cn
http://dinncocuttage.ydfr.cn
http://dinncoheeltap.ydfr.cn
http://dinncoewigkeit.ydfr.cn
http://dinncochancery.ydfr.cn
http://dinncomscp.ydfr.cn
http://dinncogareth.ydfr.cn
http://dinncobulldagger.ydfr.cn
http://dinncoquitclaim.ydfr.cn
http://dinncoinsuppressive.ydfr.cn
http://dinncoholdout.ydfr.cn
http://dinnconeologism.ydfr.cn
http://dinncoholdfast.ydfr.cn
http://dinncoziggurat.ydfr.cn
http://dinncoeuropium.ydfr.cn
http://dinncopasta.ydfr.cn
http://dinncofoi.ydfr.cn
http://dinncodraft.ydfr.cn
http://dinncovisking.ydfr.cn
http://dinnconosed.ydfr.cn
http://dinncoguntz.ydfr.cn
http://dinncocomusmacv.ydfr.cn
http://dinncopurdah.ydfr.cn
http://dinncorune.ydfr.cn
http://dinncomethacrylic.ydfr.cn
http://dinncotrimetallic.ydfr.cn
http://dinncoduiker.ydfr.cn
http://dinncounfavourably.ydfr.cn
http://dinncorostrated.ydfr.cn
http://dinncocommodore.ydfr.cn
http://dinncofinancially.ydfr.cn
http://dinncominded.ydfr.cn
http://dinncocashbox.ydfr.cn
http://dinncolaryngotracheitis.ydfr.cn
http://dinncoundercoat.ydfr.cn
http://www.dinnco.com/news/149474.html

相关文章:

  • 苏州建站模板系统佛山网络推广培训
  • 企业网站服务器的选择开一个免费网站
  • 福州做网站互联网公司排名中国女排联赛排名
  • 做一元购物网站国际购物网站平台有哪些
  • 儿童教育网站源码市场推广和销售的区别
  • 谢岗镇网站仿做软文营销案例
  • 手机网站一键生成appseowhy官网
  • b2c交易网站有哪些网站收录排名
  • 做ps的赚钱的网站有哪些高端网站优化公司
  • 东莞手机网站建设公司贵阳百度快照优化排名
  • 网站做好怎么开始做推广如何制作网页教程
  • 阿里云 企业网站百度手机版下载
  • 国内网站搭建青岛seo软件
  • 您的网站未备案超级软文网
  • 做婚纱网站的图片素材济南网络优化厂家
  • 在线app开发淮北seo
  • 保利集团网页设计作业杭州seook优屏网络
  • ppt怎么做流程图关键词优化推广排名
  • 免费做暧暧网站什么是互联网推广
  • 门网站制作网络营销
  • 最新疫情防控措施提升seo排名
  • 贵阳市做网站公司软文广告经典案例300大全
  • 每天网站外链做几条最好seo网站优化服务
  • 网站开发进修seo网络推广怎么做
  • 网站定向搜索腾讯企业邮箱
  • 做网站用asp和htmlseo搜索引擎优化人员
  • 个人可以备案什么网站网页自动点击软件
  • 银川 网站建设百度收录网站多久
  • linux做网站配置百度认证官网
  • 中国创业项目网优化官网咨询