• 欢迎访问 winrains 的个人网站!
  • 本网站主要从互联网整理和收集了与Java、网络安全、Linux等技术相关的文章,供学习和研究使用。如有侵权,请留言告知,谢谢!

手写 SpringMVC 框架

手写 SpringMVC 框架
1 SpringMVC原理 1.1 SpringMVC的运行流程 用户发送请求至前端控制器DispatcherServlet DispatcherServlet收到请求调用HandlerMapping处理器映射器。 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet Dis……继续阅读 »

winrains 7个月前 (03-31) 48浏览 1个赞

Spring MVC启动流程分析

Spring MVC启动流程分析
本文是Spring MVC系列博客的第一篇,后续会汇总成贴子。 Spring MVC是Spring系列框架中使用频率最高的部分。不管是Spring Boot还是传统的Spring项目,只要是Web项目都会使用到Spring MVC部分。因此程序员一定要熟练掌握MVC部分。本篇博客就简要分析下Spring MVC的启动流程,帮助我们更好的理解这个框架。 ……继续阅读 »

winrains 7个月前 (03-28) 48浏览 1个赞

Spring MVC源码剖析(5):消息转换器HttpMessageConverter

Spring MVC源码剖析(5):消息转换器HttpMessageConverter
概述 在SpringMVC中,可以使用@RequestBody和@ResponseBody两个注解,分别完成请求报文到对象和对象到响应报文的转换,底层这种灵活的消息转换机制,就是Spring3.x中新引入的HttpMessageConverter即消息转换器机制。 Http请求的抽象 还是回到请求-响应,也就是解析请求体,然后返回响应报文这个最基本的Http……继续阅读 »

winrains 12个月前 (11-10) 55浏览 1个赞

Spring MVC源码剖析(4):DispatcherServlet请求转发的实现

Spring MVC源码剖析(4):DispatcherServlet请求转发的实现
SpringMVC完成初始化流程之后,就进入Servlet标准生命周期的第二个阶段,即“service”阶段。在“service”阶段中,每一次Http请求到来,容器都会启动一个请求线程,通过service()方法,委派到doGet()或者doPost()这些方法,完成Http请求的处理。 在初始化流程中,SpringMVC巧妙的运用依赖注入读取参数,并最终……继续阅读 »

winrains 12个月前 (11-10) 36浏览 1个赞

Spring MVC源码剖析(3):DispatcherServlet的初始化流程

Spring MVC源码剖析(3):DispatcherServlet的初始化流程
在我们第一次学Servlet编程,学java web的时候,还没有那么多框架。我们开发一个简单的功能要做的事情很简单,就是继承HttpServlet,根据需要重写一下doGet,doPost方法,跳转到我们定义好的jsp页面。Servlet类编写完之后在web.xml里注册这个Servlet类。 除此之外,没有其他了。我们启动web服务器,在浏览器中输入地址……继续阅读 »

winrains 12个月前 (11-10) 43浏览 1个赞

Spring MVC源码剖析(2):DispatcherServlet的前世今生

Spring MVC源码剖析(2):DispatcherServlet的前世今生
上一篇文章《SpringMVC源码剖析(一)- 从抽象和接口说起》中,我介绍了一次典型的SpringMVC请求处理过程中,相继粉墨登场的各种核心类和接口。我刻意忽略了源码中的处理细节,只列出最简单的类甚至是接口类,目的就是让大家先从最高层次的抽象意义上来审视SpringMVC这个框架;我也刻意将SpringMVC和Struts2做对比,目的是让大家看到,Sp……继续阅读 »

winrains 12个月前 (11-10) 48浏览 1个赞

Spring MVC源码剖析(1):从抽象和接口说起

Spring MVC源码剖析(1):从抽象和接口说起
SpringMVC作为Struts2之后异军突起的一个表现层框架,正越来越流行,相信javaee的开发者们就算没使用过SpringMVC,也应该对其略有耳闻。我试图通过对SpringMVC的设计思想和源码实现的剖析,从抽象意义上的设计层面和实现意义上的代码层面两个方面,逐一揭开SpringMVC神秘的面纱,本文的代码,都是基于Spring的 3.1.3REL……继续阅读 »

winrains 12个月前 (11-10) 39浏览 1个赞

Spring MVC 原理探秘(2):容器的创建过程

Spring MVC 原理探秘(2):容器的创建过程
1.简介 在上一篇文章中,我向大家介绍了 Spring MVC 是如何处理 HTTP 请求的。Spring MVC 可对外提供服务时,说明其已经处于了就绪状态。再次之前,Spring MVC 需要进行一系列的初始化操作。正所谓兵马未动,粮草先行。这些操作包括创建容器,加载 DispatcherServlet 中用到的各种组件等。本篇文章就来和大家讨论一下这些……继续阅读 »

winrains 1年前 (2019-11-01) 57浏览 1个赞

Spring MVC 原理探秘(1):一个请求的旅行过程

Spring MVC 原理探秘(1):一个请求的旅行过程
1.简介 在前面的文章中,我较为详细的分析了 Spring IOC 和 AOP 部分的源码,并写成了文章。为了让我的 Spring 源码分析系列文章更为丰富一些,所以从本篇文章开始,我将来向大家介绍一下 Spring MVC 的一些原理。在本篇文章中,你将会了解到 Spring MVC 处理请求的过程。同时,你也会了解到 Servlet 相关的知识。以及 S……继续阅读 »

winrains 1年前 (2019-11-01) 50浏览 1个赞

Spring MVC启动原理

Spring MVC启动原理
本文从API角度入手,带你了解SpringMVC启动的原理。 ServletContainerInitializer 在web容器启动时为提供给第三方组件机会做一些初始化的工作,例如注册servlet或者filtes等,servlet规范中通过ServletContainerInitializer实现此功能。 每个框架要使用ServletContainerI……继续阅读 »

winrains 1年前 (2019-10-22) 51浏览 1个赞