SpringMVC源码解析
文章平均质量分 85
qq_37211608
这个作者很懒,什么都没留下…
展开
-
SpringMVC源码分析
SpringMVC源码分析系列说到java的mvc框架,struts2和springmvc想必大家都知道,struts2的设计基本上完全脱离了Servlet容器,而springmvc是依托着Servlet容器元素来设计的,同时springmvc基于Spring框架,Spring框架想必搞java的同学都很熟悉。一进Spring的官网就发现了这样一排醒目的文字, spring可以让我们构...转载 2018-08-01 17:25:32 · 123 阅读 · 0 评论 -
Spring中Ordered接口简介
前言Spring中提供了一个Ordered接口。Ordered接口,顾名思义,就是用来排序的。Spring是一个大量使用策略设计模式的框架,这意味着有很多相同接口的实现类,那么必定会有优先级的问题。于是,Spring就提供了Ordered这个接口,来处理相同接口实现类的优先级问题。Ordered接口介绍首先,我们来看下Ordered接口的定义:public interfa...转载 2018-08-02 09:08:30 · 422 阅读 · 0 评论 -
SpringMVC异常处理机制详解
重要接口和类介绍1. HandlerExceptionResolver接口 SpringMVC异常处理核心接口。该接口定义了1个解析异常的方法: ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex...转载 2018-08-01 17:35:03 · 111 阅读 · 0 评论 -
SpringMVC视图机制详解
重要接口和类介绍1. View接口 视图基础接口,它的各种实现类是无状态的,因此是线程安全的。 该接口定义了两个方法: 2. AbstractView抽象类 View接口的基础实现类。我们稍微介绍一下这个抽象类。 首先看下这个类的属性: 再看下抽象类中接口方法的实现: getContentType方法直接返回contentType属性即可。 ...转载 2018-08-01 17:34:35 · 184 阅读 · 0 评论 -
SpringMVC拦截器详解
前言拦截器是每个Web框架必备的功能,也是个老生常谈的主题了。本文将分析SpringMVC的拦截器功能是如何设计的,让读者了解该功能设计的原理。重要接口及类介绍1. HandlerExecutionChain类 由HandlerMethod和Interceptor集合组成的类,会被HandlerMapping接口的getHandler方法获取。2. HandlerIn...转载 2018-08-01 17:34:09 · 137 阅读 · 0 评论 -
SpringMVC类型转换、数据绑定详解
前言public String method(Integer num, Date birth) { ...}Http请求传递的数据都是字符串String类型的,上面这个方法在Controller中定义,如果该方法对应的地址接收到到浏览器的请求的话,并且请求中含有num和birth参数,那么num会被自动转换成Integer对象;birth会被自动转为Date对象(Date转换需要...转载 2018-08-01 17:33:17 · 123 阅读 · 0 评论 -
SpringMVC关于json、xml自动转换的原理研究
现象本文使用的demo基于maven,是根据入门blog的例子继续写下去的。我们先来看一看对应的现象。 我们这里的配置文件 *-dispatcher.xml中的关键配置如下(其他常规的配置文件不在讲解,可参考本文一开始提到的入门blog):(视图配置省略)<mvc:resources location="/static/" mapping="/static/**"/>...转载 2018-08-01 17:32:47 · 98 阅读 · 0 评论 -
详解SpringMVC中Controller的方法中参数的工作原理
前言SpringMVC中Controller的方法参数可以是Integer,Double,自定义对象,ServletRequest,ServletResponse,ModelAndView等等,非常灵活。本文将分析SpringMVC是如何对这些参数进行处理的,使读者能够处理自定义的一些参数。现象本文使用的demo基于maven。我们先来看一看对应的现象。 @Controller...转载 2018-08-01 17:32:00 · 118 阅读 · 0 评论 -
详解SpringMVC请求的时候是如何找到正确的Controller
前言我们使用浏览器通过地址 http://ip:port/contextPath/path进行访问,SpringMVC是如何得知用户到底是访问哪个Controller中的方法,这期间到底发生了什么。本文将分析SpringMVC是如何处理请求与Controller之间的映射关系的,让读者知道这个过程中到底发生了什么事情。源码分析在分析源码之前,我们先了解一下几个东西。1.这个过程...转载 2018-08-01 17:31:25 · 223 阅读 · 0 评论 -
SpringMVC核心分发器DispatcherServlet分析
DispatcherServlet初始化过程在分析DispatcherServlet之前,我们先看下DispatcherServlet的继承关系。HttpSerlvetBean继承自HttpServlet。HttpServletBean覆写了init方法,对初始化过程做了一些处理。 我们来看下init方法到底做了什么:<servlet> <servl...转载 2018-08-01 17:30:45 · 149 阅读 · 0 评论 -
SpringMVC入门
SpringMVC入门 介绍SpringMVC是一款Web MVC框架。 它跟Struts框架类似,是目前主流的Web MVC框架之一。本文通过实例来介绍SpringMVC的入门知识。实例本文所写的实例是一个员工的CRUD demo。 用idea编写,基于maven, Web框架使用SpringMVC,视图采取Freemarker技术,数据库使用MySQL,用Hiberna...转载 2018-08-01 17:29:09 · 91 阅读 · 0 评论 -
SpringMVC重定向视图RedirectView小分析
本文所讲的部分内容跟SpringMVC的视图机制有关,SpringMVC的视图机制请参考楼主的另一篇博客:https://blog.csdn.net/qq_37211608/article/details/81334931RedirectView介绍RedirectView这个视图是跟重定向相关的,也是重定向问题的核心,我们来看看这个类的源码。RedirectView属性:...转载 2018-08-02 09:08:35 · 530 阅读 · 0 评论