SpringMVC源码分析
乒乓狂魔
这个作者很懒,什么都没留下…
展开
-
SpringMVC源码总结(一)HandlerMapping和HandlerAdapter入门
[size=medium]刚接触SpringMVC,对它的xml文件配置一直比较模模糊糊,最近花了一点时间稍微看了下源代码,再加上调试,开始逐渐理解它,网上的类似的内容有很多,写本文主要是自己加深一下理解。本文适合用过SpringMVC的开发者,言归正传,首先搭建一个最简单的工程体验一下。该工程是基于maven的,pom配置不再说明,所使用的spring版本4.0.5。首先是web.x...原创 2014-08-16 22:42:26 · 487 阅读 · 0 评论 -
SpringMVC源码总结(十一)mvc:interceptors拦截器介绍
[size=medium]本文章针对mvc:interceptors标签进行介绍,它的注册过程以及在访问时的拦截过程。首先说下接口HandlerInterceptor,它有如下三个方法:[/size][code="java"]boolean preHandle(HttpServletRequest request, HttpServletResponse response, Obj...原创 2014-09-08 20:21:32 · 445 阅读 · 0 评论 -
SpringMVC源码总结(十)自定义HandlerMethodArgumentResolver
[size=medium]上一篇文章介绍了HandlerMethodArgumentResolver的来龙去脉,这篇就要说说自定义HandlerMethodArgumentResolver来解决我们的需求,本文提供了四种解决方案。需求,有一个Teacher类和Student类,他们都有属性name和age:前端form表单为:[/size][code="java"] ...原创 2014-09-04 07:45:48 · 278 阅读 · 0 评论 -
SpringMVC源码总结(九)HandlerMethodArgumentResolver介绍
[size=medium]本文章主要介绍HandlerMethodArgumentResolver在SpringMVC中的使用,介绍几个HandlerMethodArgumentResolver具体的使用情况,然后说明HandlerMethodArgumentResolver的注册来源以及如何自定义注册。首先具体看下请求映射到的handler的对应的映射函数的参数形式有哪些:Han...原创 2014-09-02 06:24:58 · 383 阅读 · 0 评论 -
SpringMVC源码总结(八)类型转换PropertyEditor的背后
[size=medium]PropertyEditor是Spring最初采用的转换策略。将会转移到Converter上。本文章主要对@InitBinder注解背后代码层面的运行过程做介绍。所以最好先熟悉它的用法然后来看通代码流程。先看实例,controller代码如下:[/size][code="java"]@Controllerpublic class FormActio...原创 2014-08-30 17:13:29 · 184 阅读 · 0 评论 -
SpringMVC源码总结(七)mvc:annotation-driven中的HttpMessageConverter
[size=medium]这一篇文章主要介绍下HttpMessageConverter整个注册过程包含自定义的HttpMessageConverter,然后对一些HttpMessageConverter进行具体介绍。HttpMessageConverter接口介绍:[/size][code="java"]public interface HttpMessageConverter {...原创 2014-08-27 22:32:55 · 280 阅读 · 0 评论 -
SpringMVC源码总结(六)mvc:annotation-driven中的HandlerMethodReturnValueHandler
[size=medium]经过了两篇的乱码说明,要重新回到mvc:annotation-driven标签中,继续说说HandlerMethodReturnValueHandler的使用,下一篇文章主要说说HttpMessageConverter。HandlerMethodReturnValueHandler是RequestMappingHandlerAdapter用来处理当含有@Reque...原创 2014-08-26 06:21:04 · 250 阅读 · 0 评论 -
SpringMVC源码总结(五)Tomcat的URIEncoding、useBodyEncodingForURI和CharacterEncodingFilter
[size=medium]继续上一章节的乱码问题。上一篇文章仅仅说了设置Tomcat的URIEncoding可以解决乱码问题,这篇文章便会讲述这一背后的内容。首先说明下,光看是没用的,要多实验实验。目前我的tomcat版本为:7.0.55,spring所有文章的版本始终为4.0.5本文章会从tomcat的源码角度来解析Tomcat的两个参数设置URIEncoding和useBody...原创 2014-08-22 06:32:40 · 193 阅读 · 0 评论 -
SpringMVC源码总结(四)由StringHttpMessageConverter引出的客户端服务器端之间的乱码过程分析...
[size=medium]继续上一篇文章遗留的乱码问题,引出从客户端数据到服务器端的乱码和服务器端数据到客户端的乱码。先说明下配置:web.xml,还是最简单的配置[/size][code="java"] Archetype Created Web Application mvc org.springframework.web.servlet....原创 2014-08-20 22:49:50 · 269 阅读 · 0 评论 -
SpringMVC源码总结(三)mvc:annotation-driven和mvc:message-converters简单介绍
[size=medium]上一篇文章讲述了最简单的mvc:annotation-driven,这次就要说说@ResponseBody注解,很明显这个注解就是将方法的返回值作为reponse的body部分。我们进一步分析下这个过程涉及到的内容,首先就是方法返回的类型,可以是字节数组、字符串、对象引用等,将这些返回类型以什么样的内容格式(即response的content-type类型,同时还要考虑到...原创 2014-08-19 06:58:14 · 371 阅读 · 0 评论 -
SpringMVC源码总结(二)mvc:annotation-driven以及@Controller和@RequestMapping的那些事
[size=medium]上一篇文章让我们了解HandlerMapping和HandlerAdapter以及默认采取的策略,这篇文章就要讲述mvc:annotation-driven对默认策略的改变。它背后到底注册了哪些HandlerMapping和HandlerAdapter。首先可以在DispatcherServlet的initStrategies方法中的initHandlerMapp...原创 2014-08-16 22:47:16 · 295 阅读 · 0 评论 -
SpringMVC源码总结(十二)ViewResolver介绍
[size=medium]首先我们先看看ModelAndView中重要的View接口。View接口:[/size][code="java"]String getContentType(); /** * Render the view given the specified model. * The first step will be preparing the r...原创 2014-09-10 06:43:45 · 299 阅读 · 0 评论