刚刚参加工作,接收公司线上项目,项目使用spring mvc + spring + mybatis,初看项目找不到地址映射关系。
在同事的讲解下获知是使用了MultiActionController(多动作控制器)且是其中的默认类型。
偶然在网上看到了http://blog.csdn.net/qq924862077/article/details/53762681 这位大大贴的ControllerClassNameHandlerMapping源码,终于将项目理通;
在springmvc配置文件中加入
<bean class="cn.xutao.crm.Util.CustomerControllerClassNameHandlerMapping" /><import resource="classpath:biz-Test.xml"/>其中CustomerControllerClassNameHandlerMapping继承至AbstractControllerUrlHandlerMapping并且内容为ControllerClassNameHandlerMapping源码;
也可以用 <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/> 代替
在biz-Test.xml中加入
<bean id="testController" class="cn.xutao.crm.controller.TestController"></bean> <!--自己写的controller-->
注意:这里的id开头必须小写
TestController继承MultiActionController
TestController中书写一个函数
public ModelAndView oferr(HttpServletRequest request, HttpServletResponse response) {System.out.println("-----------------------------------------hello----------------------------");return new ModelAndView("login");}准备login.jsp
运行程序,在浏览器输入:http://localhost/SSM/test/oferr.do,显示页面并打印-----------------------------------------hello----------------------------
这里的test即为 TestController中的test,oferr为函数名;
特此记录...............................................................................