Spring5路径匹配器PathPattern有什么用

技术Spring5路径匹配器PathPattern有什么用这篇文章主要为大家展示了“Spring5路径匹配器PathPattern有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并

本文主要给大家展示“Spring5路径匹配器PathPattern有什么用”,简单易懂,组织清晰,希望能帮你解决疑惑。让边肖带领大家学习《Spring5路径匹配器PathPattern有什么用》一文。

Spring5路径匹配器PathPattern

PathPattern处理url地址匹配的速度更快,它与AntPathMatcher的主要区别如下:

00-1010如果在路径中间使用* *会得到一个错误;

@ GetMapping((/funyi/* *)

public stringact1(){ 0

return '/funyi/* * ';

}

1.PathPattern 只支持结尾部分使用 **

,同时可以匹配多级路径,得到的值赋给对应控制器方法的参数路径;

@GetMapping('/funyi/{*path} ')

public void act2(@ PathVariableStringPath){ 0

system . out . println(' path=' path ');

}回弹项目可以通过添加以下配置来打开路径模式:

@配置

public class webconfigimplesswebmvcconfigurer {

@覆盖

publicavitconfigurepath match(path matcheconfigurerconfigurer){ 0

configurer . SetPatternParser(NewPathPatternParser());

}

}

2.PathPattern 支持使用例如 {*path}

Antpathmacher:第一版Sping于2013年推出。

Pathpattern:由Spring 5引入,在包中:org . Spring framework . web . util . pattern . path pattern,其模块为spring-web。可以看出,它是专门为Web设计的“工具”。

PathPattern去掉了Ant这个词,但保持了很好的向下兼容性:除了不支持* *写在路径中间(以消除歧义)之外,其他匹配规则在行为上与AntPathMatcher一致,并加入了对{*pathVariable}的强支持。总的来说,可以认为后者与前者是兼容的。

PathPattern比AntPathMatcher具有更好的性能。理论上,模式越复杂,PathPattern的优势就越明显。

AntPathMatcher可以用于非web环境,而PathPattern只适用于Web环境。所以PathPattern并不能完全取代AntPathMatcher。

在内部,AntPathMatcher执行纯字符串操作和比较。另一方面,对于任何字符串模式,PathPattern最终都将被解析为几段PathElement,它们以链式结构连接起来表示模式,形成一个对象数据。这种结构化表示使可读性更强、更灵活,从而获得更好的性能。

两者简单使用示例:

newAntPathMatcher()。match('/api/v1/** ','/API/v1/2/3 * * ');

newPathPatternParser()。解析('/api/v1/** ')。匹配项(PathContainer . ParsePath('/API/v1/2/3 * * ');

//每个pathPattern字符串对应一个PathPatternParser,每个parsedPath字符串对应一个pathcontainer。可能有小伙伴会说:在服务层,甚至在道层,我可以正常使用路径模式对象。为什么呢?

这个问题就相当于:HTTP servlet request属于web层的特殊组件,但是你仍然可以把它传递给Service层甚至Dao层使用,编译运行的时候也不会出错。

以上就是文章“Spring5 PathPattern匹配器有什么用?”感谢您的阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。想了解更多知识,请关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/115593.html

(0)

相关推荐

  • 如何安装openstack的基础组件

    技术如何安装openstack的基础组件这篇文章主要介绍如何安装openstack的基础组件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!将安装一些关于openstack的基础组件,例如:数据库、

    攻略 2021年11月18日
  • 图像边缘检测:Canny算子、Prewitt算子和sobel算子

    技术图像边缘检测:Canny算子、Prewitt算子和sobel算子 图像边缘检测:Canny算子、Prewitt算子和sobel算子边缘检测是检测图像中的一些像素点,它们周围的像素点的灰度发生了急剧的

    礼包 2021年10月27日
  • 归并排序和逆序对数量

    技术归并排序和逆序对数量 归并排序和逆序对数量归并排序
    #includeiostreamusing namespace std;
    const int N = 100010;
    int q[N];
    int

    礼包 2021年11月5日
  • 40种聚会小游戏,聚会适合两人一组玩的小游戏

    技术40种聚会小游戏,聚会适合两人一组玩的小游戏快乐大本营的,谁是卧底40种聚会小游戏!还有考验默契的,一个人画一个人猜,or一个人看词比动作,然后不说话的那种,叫别人猜是什么
    瞎子背瘸子
    目的:沟通配合能力,活跃气氛

    生活 2021年10月31日
  • 度和千瓦时换算,度和千瓦时的换算是怎么的啊

    技术度和千瓦时换算,度和千瓦时的换算是怎么的啊千瓦时就是平时所说的“度”度和千瓦时换算,是电功的单位。瓦特是功率的单位。如果在功率上再乘以一个时间,那么这个结果就是功。1焦=1瓦×秒1千瓦时=1千瓦×1小时=1000瓦×

    生活 2021年10月25日
  • 租用美国服务器适合什么业务

    技术租用美国服务器适合什么业务从技术上讲,轻量级云服务器是特化了某一配置的高性价比云服务器的结合。下面,我们将了解轻量级云服务器有什么优势,使用物理服务器搭建网站,您需要租用整个服务器,这成本会变得非常昂贵。这对于一些比

    礼包 2021年12月21日