和struts2一样,springmvc也可以一个Controller中实现多个方法.
1.Controller类
public class MultiController extends MultiActionController{
public ModelAndView add(HttpServletRequest request,HttpServletResponse response){
System.out.println("----add");
return new ModelAndView("welcome");
}
public ModelAndView update(HttpServletRequest request,HttpServletResponse response){
System.out.println("----update");
return new ModelAndView("welcome");
}
}
需要继承MultiActionController类,方法必须带request,和response参数,否则会找不到方法.
2.配置文件
<!-- 参数解析器 -->
<bean id="paramMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<!-- 参数名称 -->
<property name="paramName" value="action"></property>
</bean>
<bean name="/test1/multiCtrl" class="com.skymr.mvc.controller.MultiController">
<!-- 注入解析器 -->
<property name="methodNameResolver">
<ref bean="paramMethodResolver"/>
</property>
</bean>
配置的方法参数名称为action,也就是在请求的时候要在url后加上?action=****
3.测试
请求url:http://localhost:8080/springMVC/test1/multiCtrl?action=update
后台打印update方法.