0

我在 Spring MVC 中的 url 映射有问题。我的目标是用这种形式映射一个 url:“applicationName/app/”。

这是我的 web.xml:

<?xml version="1.0" ?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/app/*</url-pattern>
    </servlet-mapping>
</web-app>

我的控制器:

@Controller
public class Controller {

    @RequestMapping(value = "app/1")
    @ResponseBody
    public String test1 (){
        return "test1";
    }
}

我尝试了“/app/1”和“/app/1/”,但我的 url 映射不起作用。

4

2 回答 2

3

With your dispatcher configured the way it is your mapping would be

{contextPath}/app/app/1
于 2013-03-12T13:41:01.263 回答
1

在您正在使用的 web.xml 中/app/*,再次在您的 Controller 中,您已经给出了app/1..so 2app将出现在您的 url 映射中。所以尝试点击appName/app/app/1它应该可以工作。否则app从 web.xml中删除

于 2013-03-12T19:53:54.617 回答