详解spring mvc中url-pattern的写法

详解springmvc中url-pattern的写法

本文主要介绍springmvc中url-pattern的编写方法。本文通过示例代码向您详细介绍,对您的学习或工作有一定的参考价值。有需要的朋友可以参考一下。

1.设置url-pattern为*.do(最为常见的方式)

只要您的请求url包含已配置的url模式,该url就可以到达DispatcherServlet。当然,url模式通常配置为*。在这里做行业,所以你最好也这样做。

2.设置url-pattern为/*(这种方式是很不好)

如果url-pattern被设置为/*,那么web项目中的任何jsp都不能访问它,并且会报告一个错误404。这是因为DispatcherServlet会把对JSP页面的跳转请求当作普通的控制器请求,它会处理它,但是此时找不到对应的控制器。

3.设置url-pattern为/(用的越来越多)

如果url-pattern设置为/,只要在web.xml文件中找不到匹配的url,他们的访问请求就会被交给DispatcherServlet进行处理。静态资源:css文件、js文件、图片也会被拦截,交给DispatcherServlet处理。这种配置方法不会拦截。jsp文件和。jspx文件,因为在tomcat中的conf目录下的web.xml文件中已经添加了相应的处理方法,会交给org . Apache . jasper . servlet . JSP servlet进行处理。也就是说,我们可以正常访问系统中的jsp文件。

有三种方法可以解决静态资源无法访问的问题:

使用默认Servlet

我们可以通过使用这个defaultservlet来处理静态资源,并将以下配置添加到您系统中的web.xml文件,该文件应该添加在DispatcherServlet之前,这样系统就会将带有以下后缀的请求交给DefaultServlet进行处理:

servlet映射

servlet-name默认/servlet-name

url模式*。jpg/URL-模式

/servlet-映射

servlet映射

servlet-name默认/servlet-name

url模式*。png/url模式

/servlet-映射

servlet映射

servlet-name默认/servlet-name

url模式*。js/url模式

/servlet-映射

servlet映射

servlet-name默认/servlet-name

url模式*。css/url模式

/servlet-映射

使用mvc:默认-servlet-handler

!-只需在springmvc.xml文件中添加以下配置。所有请求都将以这种方式处理,然后交给相应的servlet。事实上,这种方式最终是由DefaultServlet处理的:-

mvc:默认-servlet-handler/

使用mvc:资源

spring mvc中提供了mvc:resources标签来解决静态资源无法访问的问题。只需在springmvc.xml的配置文件中添加以下内容,这些内容将交给springmvc的ResourceHttpRequestHandler类进行处理:

mvc:资源映射=/images/** 位置=/images/ /

mvc:资源映射=/css/** 位置=/css/ /

mvc:资源映射=/js/** 位置=/js/ /

其中包括:

映射表示对该资源的请求。请注意,它后面有两个星号* *。

Location表示静态资源所在的目录。在我的项目中,我将在webapp下创建一个images文件夹,并将所有图片放在该文件夹中。

关于在spring mvc中编写url-pattern的文章到此结束。有关spring mvc中url-pattern的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

详解spring mvc中url-pattern的写法