我有一个带有两个控制器类的spring MVC应用程序,如下所示。
package test;
@Controller
public class MyTestController{
@RequestMapping()
public ModelAndView getTestView(){
//create model and view
//return model and view
}
}
package test;
@Controller
public class MyTestDemoController{
@RequestMapping()
public ModelAndView getTestDemoView(){
//create model and view
//return model and view
}
}
我使用&#39; <mvc:annotation-driven />
&#39; &安培; &#39; <context:component-scan base-package="test.controller" />
&#39;识别控制器。
当我使用类似于http://localhost:8080/myapp/MyTest.htm的网址点击应用程序时,我的意图是调用getTestView() 和simillarly 当我使用类似于http://localhost:8080/myapp/MyTestDemo.htm
的网址点击应用程序时,getTestDemoView()我尝试将它放在Spring应用程序servlet中,但它已经完成了。
<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" />
你能建议我使用spring注释实现ControllerClassNameHandlerMapping吗?
答案 0 :(得分:0)
您的代码正在尝试将root映射到两个控制器。将@RequestMapping(&#34; someValue&#34;)放在类顶部,类定义之上,然后转到localhost:8080 / someValue以查看响应。
答案 1 :(得分:0)
您正在使用扩展程序&#34; .htm&#34;并期望命名约定自动工作。我认为删除扩展可能会有效。
按照&#34; http://www.mkyong.com/spring-mvc/spring-mvc-controllerclassnamehandlermapping-example/&#34; 如果您正在使用扩展,请在您的配置中写下
或遵循命名惯例。
此致 Krish