spring中/和/*和/**的区别,简介明了搞清楚怎么用 您所在的位置:网站首页 茜和倩的区别 spring中/和/*和/**的区别,简介明了搞清楚怎么用

spring中/和/*和/**的区别,简介明了搞清楚怎么用

2023-10-24 18:23| 来源: 网络整理| 查看: 265

区别是什么?

请一句话搞明白下面的文字意思,理解可就可以走人。

/ 和 /*区别 / 拦截所有请求 包括静态资源和动态请求 但是不拦截jsp /*拦截所有请求 包括静态资源和动态请求 也拦截jsp 区别就在于/ 不拦截jsp /*拦截jsp /* 和 /** 区别 /**的意思是所有文件夹及里面的子文件夹 /*是所有文件夹,不含子文件夹 注意点案例

理解下面的案例有助于理解如何使用

场景:当我在客户端调用URL:/user/list然后返回user.jsp视图,

当配置的是/:DispathcherServlet拿到这个请求然后返回对应的controller, 然后依据Dispather Type为Forward类型转发到user.jsp视图,即就是请求user.jsp视图(/user/user.jsp),此时Dispather没有拦截/user/user.jsp, 因为此时你配置的是默认的/,就顺利的交给ModleAndView去处理显示了。当配置的是/*:DispathcherServlet拿到这个请求然后返回对应的controller,然后通过Dispather Type通过Forward转发到user.jsp视图, 即就是请求user.jsp视图(/user/user.jsp),此时Dispather已经拦截/user/user.jsp,Dispatcher会把他当作Controller去匹配,没有匹配到就会报404错误。

结论:在配置视图的时候尽量用/这种方式。

结论

通过注意点案例我们大概可以理解为什么要有两个的区分。配置/*是为了直接访问静态资源,配置/是为了避免内部forward到视图层时被拦截。所以根据业务决定如何具体控制。另外,无论是拦截器,过滤器,还是安全等本质上都是一样的。上述规则一样有效。

参考: https://www.cnblogs.com/searain/articles/8391773.html



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有