以下是web.xml中的配置,當路徑配置為:/test/*,這樣是匹配不到對應注解的方法的,但是如果將路徑改為/test/add,這樣變可以訪問到我加了requestmapping注解的add方法,請問有哪位大神能解答一下嗎?感謝!
<servlet>
<servlet-name>spring-mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-mvc-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring-mvc</servlet-name>
<url-pattern>/test/*</url-pattern>
</servlet-mapping>
uj5u.com熱心網友回復:
在web.xml 配置DispatcherServlet時 將url-pattern配置成下面的形式:<url-pattern>/rest/*</url-pattern>
1
在Controller中 方法名上面的映射路徑配置成下面幾種情況:
1. /rest/url/url2
瀏覽器中輸入 localhost:8080/rest/url/url2
是訪問不到該資源的
2. /url/url2 這樣在瀏覽器中訪問 localhost:8080/rest/url/url2是可以訪問到的
思考:
url-patter呢 /xx/* 這種形式 在映射到controller的時候 * 之前路徑被濾掉,只匹配最后一個*的。
實驗1:
urlpattern 配置為 /rest/path/*
@requetMapping 配置為 /url
此時瀏覽器訪問 localhost:8080/rest/path/url 才能訪問到
實驗二:
urlpattern 配置為 /rest/path 這相當于精確配置(注意path后面不能有/)
所以
@requetMapping 配置也必須為 /rest/path
此時瀏覽器訪問 localhost:8080/rest/path 才能訪問到
uj5u.com熱心網友回復:
謝謝了,我找了好久這個問題,就是不行,茅塞頓開啊uj5u.com熱心網友回復:
正解zzzzzzzzzz轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/80293.html
標籤:Web 開發
上一篇:求助帖,需要用java實作演算法可視化教學系統,大佬們求指導
下一篇:監聽呼叫客戶端組件無法顯示
