首先要知道url-pattern是什么,为什么要设置,不设置有什么影响,如果要设置应该怎样设置
1、什么是url-pattern
简单说 servlet-mapping是用于servlet的路径映射配置,其中url-pattern为指定的映射拦截路径。在SpringMVC中,url-pattern指定了spring需要拦截派发的路径。
实际中,用户发送一个请求,该请求只要满足web.xml文件中的【url-pattern】的规则,这个请求就会交给这个前端控制器(DispatcherServlet),然而前端控制器在收到请求后自己不进行任何处理,根据相应的【URL的映射规则】委托给其他的页面控制器进行处理请求。前端控制器只作为一个统一的访问点,进行全局的流程控制,可以理解为调度 (Dispatcher)。
也就是说如果不符合规则,就会被拦截。这有点像寄信,前端控制器类似邮局,寄信人寄一封信(请求),如果收件人地址(请求路径)符合规则且正确,那么这封信就会被准确投递(访问成功),否则只能退回。至于信件里面有什么内容,要不要回信,由收件人自己去处理。
2、如何设置
url-pattern有5种配置模式:
(1)/xxx:完全匹配/xxx的路径
(2)/xxx/*:匹配以/xxx开头的路径,请求中必须包含xxx。
(3)/*:匹配/下的所有路径,请求可以进入到action或controller,但是转发jsp时再次被拦截,不能访问jsp界面。
(4).xx:匹配以xx结尾的路径,所有请求必须以.xx结尾。比如拦截*.do、*.htm结尾的,例如:/user/add.do,但不会影响访问静态文件。
(5)/:默认模式,未被匹配的路径都将映射到此servlet,对jpg,js,css等静态文件也将被拦截,不能访问。
百度智能小程序什么是url pattern?
url pattern
网址模式
拼音双语对照
双语例句
1
The Rails router routes the request to the controller based on the URL pattern.
Rails路由器根据URL模式把请求路由给控制器。
2
The file will include the specific servlet class definitions and their corresponding URL pattern.
这个文件将包括特定的servlet类定义以及它们对应的URL模式。
servlet在web.xml中怎么配置url-pattern?
url pattern是在小程序包中app.json中的部分代码,因为燱eb牥嬷悄苄〕绦蚪尤胨阉魇保?枰?峁┲悄苄〕绦蛴肫涠杂Φ腍5站点的映射关系,因此开发者需要在燼pp.json犞薪?邢喙嘏渲谩#ù瞬糠植灰览蹬渲米矢竦南拗疲?ㄒ樵谏昵肱渲米矢竦耐?笨?即?碚獠糠帜芰Γ
url-pattern是给外部提供的一个访问DoGetDemo类的接口,可以自己随意定义,然后在IE里面写入这个配置内容。
<url-pattern>:
<url-pattern>是我们用Servlet做Web项目时需要经常配置的标签,例:
<servlet>
<servlet-name>index</servlet-name>
<servlet-class>com.we.servlet.IndexServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>index</servlet-name>
<url-pattern>/index</url-pattern>
</servlet-mapping>
当我们在浏览器的地址栏里输入http://localhost:8080/we/index时[假设我部署在webapps目录下的项目名为we]
就会匹配到我们指定的<url-pattern>中,即/index然后一步一步找到对应的<servlet-class>
那我们输入的URL:http://localhost:8080/we/index又是如何与<url-pattern>中的/index匹配的呢?
首先我们要知道URL的组成
http://localhost:8080 我们可以理解为是我们的服务器地址,而该地址之后的部分我们统称为:RequestURI
RequestURI是我们需要重点注意的部分,其又可以分解为几部分:
1、/we是我们的ServletConext的上下文地址,我们称为ServletContext Path,可以简单理解为部署项目时的webapps目录下的项目名
2、/index是我们的Servlet的地址,我们称为Servlet Path,这里就是需要与我们的<url-pattern>匹配的内容
注:在/index后边我们还可以跟其他的信息,例如:/index?name=admin&pass=admin 这是其中一种明文表示的方式
以上就是关于配置servlet时<url-pattern>的作用是全部的内容,如果了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!