MultiActionController 不需要强制重写任何方法
类方法:
public class MyMultiActionController extends MultiActionController { public ModelAndView doOne(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView mv=new ModelAndView(); mv.setViewName("/insert"); return mv; } public ModelAndView doTwo(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView mv=new ModelAndView(); mv.setViewName("/delete"); return mv; } }注意:这里需要时public,否则会执行出错
配置文件:
<!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/"/> <property name="suffix" value=".jsp"/> </bean> <!--处理器映射器--> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/doOne" value="myMultiActionController"></entry> </map> </property> </bean> <!--注册Hanlder 处理器--> <bean id="myMultiActionController" class="cn.ljl.controller.MyMultiActionController"> <property name="supportedMethods"> <set> <value>POST</value> <value>GET</value> </set> </property> </bean>
PropertiesMethodNameResolver:
类方法同上:
配置文件:
<!--处理器适配器--> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/*" value="myMultiActionController"></entry> </map> </property> </bean> <!--属性方法名称解析器--> <bean id="propertiesMethodNameResolver" class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver"> <property name="mappings"> <props> <prop key="/one">doOne</prop> <prop key="/two">doTwo</prop> </props> </property> </bean> <!--引入视图对象--> <bean class="org.springframework.web.servlet.view.XmlViewResolver"> <property name="location" value="classpath:myView.xml"></property> </bean> <!--视图解析器--> <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"/> <!--注册Hanlder 处理器--> <bean id="myMultiActionController" class="cn.ljl.controller.MyViewResolver"> <property name="methodNameResolver" ref="propertiesMethodNameResolver"></property> </bean>ParameterMethodNameResolver:
类相同:
配置文件:
<!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/"/> <property name="suffix" value=".jsp"/> </bean> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/ljl.do" value="myMultiActionController"></entry> </map> </property> </bean> <!--参数方法名称解析器--> <bean id="parameterMethodNameResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="actionName"></property> </bean> <!--注册Hanlder 处理器--> <bean id="myMultiActionController" class="cn.ljl.controller.MyMultiActionController"> <property name="methodNameResolver" ref="parameterMethodNameResolver"></property> </bean>