在前面。已经可以利用SpringMVC进行简单的例子了,但是,在controller中我们实现了Controller接口。这样就必须实现handleRequest(HttpServletRequest request,
HttpServletResponse response){}方法。从而spring才可以找到这个controller中的方法来运行。在日常的开发中我们有很多的方法需要实现,但不可能建很多的controller。那么就需要在一个controller中写多个方法。在建好项目后,先建立一个controller。使其继承MultiActionController类。再在类中建立多个方法,注意:在方法中需要传入两个参数HttpServletRequest和HttpServletResponse。
如下:
public ModelAndView add(HttpServletRequest request,HttpServletResponse response){ System.out.println("-----add-------"); return new ModelAndView("/multi","methodName","add"); } public ModelAndView update(HttpServletRequest request,HttpServletResponse response){ System.out.println("-----update-------"); return new ModelAndView("/multi","methodName","update"); }
最后在springMVC的配置文件中进行配置
先配置参数名称解析器:
<!-- 参数名称解析 -->
<bean id="paramMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="action"></property> </bean>注意上面中的action在下面解释。
配置完参数名称解析器后,配置我们常用的bean
<bean name="/test/multi" class="com.yx.controller.MultiController">
<property name="methodNameResolver"> <ref bean="paramMethodResolver"/> </property> </bean>在这里需要将参数解析器配置进去。
最后我们访问页面如下:
在这里看到有一个“action=update”,action为参数名称解析器中配置的action,update为MultiController类中的update方法。