Coin163

首页 > spring-mvc 详解

spring-mvc 详解

相关标签: spring-mvc

2020腾讯云双十一活动,全年最低!!!(领取3500元代金券),
地址https://cloud.tencent.com/act/cps/redirect?redirect=1073

2020阿里云最低价产品入口,含代金券(新老用户有优惠),
入口地址https://www.aliyun.com/minisite/goods

相关推荐:Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解

引言: 接上一篇文章,对@RequestMapping进行地址映射讲解之后,该篇主要讲解request 数据到handler method 参数数据的绑定所用到的注解和什么情形下使用; 简介: handler method 参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类:(主



如图 
请求首先通过DispatcherServlet。servlet根据HandlerMapping,来处理请求,并根据请求,来找到Controller,Controller执行完毕后,发送一个ModelAndView,并告诉需要展示哪个视图。根据这个视图,servlet找到这个视图的ViewResolver,并由这个ViewResolver生成对应的view,并输出。

配置servlet 
springmvc是基于servlet的,因此需要在web.xml配置。

<servlet> 
<servlet-name>roadrantz</servlet-name> 
<servlet-class>org.springframework.web.servlet.DispatcherServlet 
</servlet-class> 
<load-on-startup>1</load-on-startup> 
</servlet> 

默认情况下,DispatcherServlet会加载这个servletname-servlet.xml文件,将这个文件作为spring的配置文件(淡然可以和全局的加载器,也就是全局的监听器和监听器加载的配置文件结合使用)。如上面我们定义的servlet-name的名字是roadrantz,因此它会加载roadrantz-servlet.xml。 

相关推荐:spring mvc拦截器和的详解

MVC的拦截器 经本人在Spring mvc中对方案1和方案2的测试表明,并没有拦截静态资源,所以可以放心使用方案1和方案2,方案3可以放弃,并且可以放心使用<mvc:annotation-driven />注解。   方案一,(近似)总拦截器,拦截所有url <mvc:interceptors> <bean

之后当然是要配置这个servlet对应的映射的了。

<servlet-mapping> 
<servlet-name>roadrantz</servlet-name> 
<url-pattern>*.htm</url-pattern> 
</servlet-mapping> 

事实上,我们应该把配置分成多个文件。这样,基于springmvc的配置只在servletname-servlet.xml中,和其他部分的配置(如事务管理,数据源等配置则在另外一个地方,因为他们是通用的)是分开的。 


DispatcherServlet 会配置如下的bean  


Controller: mvc中的C 
Handler mappings :处理器影射器,它会根据请求,查找到实际的请求处理者 
View resolvers: 视图解析器 
Locale resolver :本地化解析器,提供国际化的支持 
Theme resolver :主题解析器 
Multipart file :文件上传解析器 

Handler exception resolvers :异常处理器 


原文

如图  请求首先通过DispatcherServlet。servlet根据HandlerMapping,来处理请求,并根据请求,来找到Controller,Controller执行完毕后,发送一个ModelAndView,并告诉需要展示哪个视图。根据这

------分隔线----------------------------