Spring5 里边的新招式!这种 URL 请求让我涨见识了!

Spring5 也已经出来好久了,里边有一些新玩法也需要我们去慢慢揭开面纱,这不,松哥最近在研究 SpringMVC 源码的时候,就看到这样一段代码:


  1. protected String initLookupPath(HttpServletRequest request) { 
  2.  if (usesPathPatterns()) { 
  3.   request.removeAttribute(UrlPathHelper.PATH_ATTRIBUTE); 
  4.   RequestPath requestPath = ServletRequestPathUtils.getParsedRequestPath(request); 
  5.   String lookupPath = requestPath.pathWithinApplication().value(); 
  6.   return UrlPathHelper.defaultInstance.removeSemicolonContent(lookupPath); 
  7.  } 
  8.  else { 
  9.   return getUrlPathHelper().resolveAndCacheLookupPath(request); 
  10.  } 

这个方法就是 Spring5 里边出来的,以前是没有这个方法的。在旧的 SpringMVC 中,当我们需要获取当前请求地址的时候,直接通过如下方式获取:


  1. String lookupPath = this.getUrlPathHelper().getLookupPathForRequest(request); 

但是现在变了,现在获取当前请求 URL 地址时,方式如下:


  1. String lookupPath = initLookupPath(request); 

两种方式相比,主要是 initLookupPath 方法中多了 usesPathPatterns 选项,这是 Spring5 中的新玩意,所以今天松哥就通过一篇简单的文章来和大家分享一下 usesPathPatterns 到底是什么,该怎么玩!

这可不是一个小变化哦!特别是如果你在项目中使用了 WebFlux,那么这个东西就显得尤为重要了!

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章