MultiActionController
继承MultiActionController。实现以方法为单位的请求方式。
这里有两种配置。分别是根据参数名指定要请求的方法和根据方法名请求controller。
分别是:
1、ParameterMethodNameResolver 根据参数名
2、InternalPathMethodNameResolver 根据方法名
案例代码如下。
1、 org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver根据参数名的值指定要请求的方法
请求的url:
http://localhost:8080/springmvc/to_add.do?func=to_add
注意的地方:
1、 类必须继承MultiActionController
2、 被请求的方法一定要传递request和response的参数
public class MultiAction extends MultiActionController{
public void to_add(HttpServletRequest request,HttpServletResponse reponse){
System.out.println("to_add"+"--------");
}
public void to_delete(HttpServletRequest request,HttpServletResponse reponse){
System.out.println("to_delete"+"--------");
}
}
在配置上:
首先方法to_add.do就会通过下面的prop配置跳转到相应的controllerbean
然后指定参数func是因为:
<property name="methodNameResolver">
<bean class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="func"></property>
</bean>
</property>
这里的func指定了要访问的方法名
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/login.do">login</prop>
<prop key="/to_add.do">multi</prop>
<prop key="/to_delete.do">multi</prop>
</props>
</property>
</bean>
<bean id="multi" class="cn.zhang.mvc.MultiAction">
<property name="methodNameResolver">
<bean class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="func"></property>
</bean>
</property>
</bean>
2、
org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver
而另外一种org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver则更加假单。配置:
它和上一个org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver相比就简单很多。它直接在url指定方法名就可以比如:
http://localhost:8080/springmvc/to_delete.do 这个就是说要访问to_delete.do映射到的multiActionContoller中的to_delete方法
<bean id="multi" class="cn.zhang.mvc.MultiAction">
<property name="methodNameResolver">
<bean class="org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver">
</bean>
</property>
</bean>
Spring mvc (四) [继承MultiActionController实现以方法为单位的controller][配置2种请求的指定方式]
最新推荐文章于 2021-10-27 10:31:57 发布