【问题标题】:How to map URL to specific controller's method in Spring MVC using XML?如何使用 XML 将 URL 映射到 Spring MVC 中的特定控制器方法?
【发布时间】:2015-11-28 10:44:47
【问题描述】:

我知道使用@RequestMapping annotation 可以做到这一点,但有没有办法在我的 XML 调度程序 servlet 设置文件中做到这一点?我尝试使用SimpleUrlHandlerMapping:

mvc-dispathcer-servlet.xml

...

<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <props>
            <prop key="/users">userController</prop>
        </props>
    </property>
</bean>

...

但据我了解,无法使用SimpleUrlHandlerMapping 将 URL 映射到某些控制器的方法。有没有办法在 XML 设置文件中做到这一点?

【问题讨论】:

    标签: java xml spring spring-mvc servlets


    【解决方案1】:

    据我所知,这是不可能的。

    使用SimpleUrlHandlerMapping,您只能将 URL 映射到单个控制器。这是有道理的:在 Java-5 和注释之前,制作 URL 映射的唯一方法是使用 HandlerMapping,而制作控制器的唯一方法是创建一个扩展 AbstractController 的类。这样的控制器只能处理它们配置的 URL。当时,URL 映射是面向类而不是面向方法的。

    从 Java 5 开始,Spring MVC 添加了很多注释,例如 @RequestMapping,允许面向方法的 URL 映射,但他们没有将其反向移植到 XML 配置中。

    实际上有一个JIRA ticket 正是针对此功能,在撰写本文时仍未解决(修复版本为 4.3 Backlog)。

    【讨论】:

      猜你喜欢
      • 2012-10-25
      • 2015-09-05
      • 1970-01-01
      • 2017-02-25
      • 2020-01-16
      • 2016-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多