java - 有没有办法在 Spring 中将一个 URL 映射到另一个 URL?

标签 java spring web-applications configuration

在 Struts 1 中,您可以在 struts-config.xml 中有如下声明:

<action path="/first" forward="/second.do">

在 Spring 中是否也可以做类似的事情,或者我可以只将 URL 映射到 Controller 吗?我正在使用 Spring 2.5.x。

我当然可以将 URL 映射到与以下相同的 Controller :

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <property name="mappings">
    <props>
      <prop key="/first.do">theController</prop>
      <prop key="/second.do">theController</prop>
      ...

或者可以使用 org.springframework.web.servlet.mvc.ParameterizableViewController 并有类似的东西:

<bean id="theDummyController" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
     <property name="viewName" value="forward:second.do"/>
</bean>

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <property name="mappings">
    <props>
      <prop key="/first.do">theDummyController</prop>
      <prop key="/second.do">theController</prop>
      ...

我知道我可能会使事情复杂化,我应该坚持简单的事情来完成工作,但我希望这更像是一种声明:“这个 URL 实际上是一个快捷方式(或别名)到这个其他 URL”(不要问为什么......长话短说......)它在 ParameterizableViewController 中以某种方式可见,但不完全可见。

那么,这可能吗?

谢谢!

最佳答案

我最终创建了一个单独的 URL 处理程序映射,我将 URL 别名组合在一起。然后,我求助于对包含的映射的全部内容的非常详细的描述,例如:

<bean id="aliasUrlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <description>
    <![CDATA[
      The following URLs are in fact shortcuts (or aliases) 
      to other URLs etc etc (...I'll spare you the ugly part)
    ]]>
  </description>
  <property name="mappings">
    <props>
      <prop key="/first.do">theController</prop>
      ...

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <property name="mappings">
    <props>
      <prop key="/second.do">theController</prop>
      ...

关于java - 有没有办法在 Spring 中将一个 URL 映射到另一个 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1845669/

相关文章:

java - 应用android插件的问题

Spring:在mvc:resources下不接受POST请求?如何解决这个问题

java - 有什么方法可以使用 Eclipse 调试 Web 应用程序吗?

java - 以 block 的形式从服务器获取排序的数据?

java - 识别图片上的 SWT 和 JFace 小部件

JavaFX 无法加载 FXML,找不到资源

java - 什么设计比较好 : universal builder or several concrete methods?

java - 当我的集合作为 ArrayCollection 发送并在服务器上作为 java.util.Set 接收时,如何保持集合的排序顺序?

java - 如何使用Spring MVC隐藏url中的请求参数值

asp.net - Global.asax Application_start 在每个 Action 上触发