springmvc中 继承MultiActionController 3种

本文介绍了Spring MVC中使用MultiActionController的三种不同配置方式,包括如何设置处理器映射器、视图解析器等关键组件,并展示了具体的实现代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web.xml以其中一个为例

<web-app> <display-name>Archetype Created Web Application</display-name> <!--核心控制器的配置 DispatcherServlet--> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc-servlet-myView.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>

一 : MultiActionController配置文件:

<!--处理器映射器 --> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/*.do"> <value>multiController</value> </entry> </map> </property> </bean> <!--注册Hanlder 处理器--> <bean id="multiController" class="cn.happy.controller.multiactionController"> </bean> <!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/"></property> <property name="suffix" value=".jsp"></property> </bean> 继承MultiActionController public class multiactionController extends MultiActionController { public ModelAndView doinsert(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView model=new ModelAndView(); model.setViewName("insert"); return model; } }

二: MultiActionController配置文件:(另一种形式)

<!--1--> <!--处理器适配器--> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/*" value="PropertiesmultiController"></entry> </map> </property> </bean> <!--属性方法名称解析器 http://localhost:8080/first.do--> <bean id="propertiesMethodResovler" class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver"> <property name="mappings"> <props> <prop key="/first.do">doinsert</prop> </props> </property> </bean> <!--2--> <!--参数方法名称解析器 http://localhost:8080/hello.do?actionName=doinsert--> <!-- <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/hello.do">PropertiesmultiController</prop> </props> </property> </bean> <bean id="paramMethodResovler" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="actionName"></property> </bean>--> <!--注册Hanlder 处理器 ref=paramMethodResovler/propertiesMethodResovler--> <bean id="PropertiesmultiController" class="cn.happy.controller.PropertiesMultiAction"> <property name="methodNameResolver" ref="propertiesMethodResovler"></property> </bean> <!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/"></property> <property name="suffix" value=".jsp"></property> </bean> 继承MultiActionController public class PropertiesMultiAction extends MultiActionController{ public ModelAndView doinsert(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView model=new ModelAndView(); model.setViewName("insert"); return model; } }

三: 配置文件一:

<!--1 http://localhost:8080/first.do --> <!--属性方法名称解析器 http://localhost:8080/first.do--> <!--<bean id="propertiesMethodResovler" class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver"> <property name="mappings"> <props> <prop key="/first.do">dodelete</prop> </props> </property> </bean>--> <!--2 http://localhost:8080/hello.do?actionName=doinsert 京东--> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/*" value="myViewController"></entry> </map> </property> </bean> <!--引入视图对象--> <bean class="org.springframework.web.servlet.view.XmlViewResolver"> <property name="location" value="classpath:myView.xml"></property> </bean> <!--视图解析器--> <bean id="beanNameResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver"/> <!--注册Hanlder 处理器 paramMethodResovler/propertiesMethodResovler--> <bean id="myViewController" class="cn.happy.controller.MyViewResovler"> <property name="methodNameResolver" ref="paramMethodResovler"></property> </bean> <bean id="paramMethodResovler" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"> <property name="paramName" value="actionName"></property> </bean> <!--视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/"></property> <property name="suffix" value=".jsp"></property> </bean> 配置文件二: <!--内部视图:视图对象--> <bean id="internalResource" class="org.springframework.web.servlet.view.JstlView"> <property name="url" value="/WEB-INF/insert.jsp"></property> </bean> <!--外部视图 http://localhost:8080/hello.do?actionName=doinsert--> <bean id="jd" class="org.springframework.web.servlet.view.RedirectView"> <property name="url" value="https://www.jd.com/"></property> </bean> 继承MultiActionController public class MyViewResovler extends MultiActionController{ public ModelAndView doinsert(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView model=new ModelAndView(); model.setViewName("jd"); return model; } public ModelAndView dodelete(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView model=new ModelAndView(); model.setViewName("internalResource"); return model; } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值