Spring

OAuth2

今天是清明假期最后一天,跟以往一样下起了细雨。天气越舒适,人的思绪就好像会越乱。年轻人和长辈的想法总会有出入,早上家人提出的话题被我草草结束。虽表面上结束了这个话题,但其实关于这个话题的联想一直脑海萦绕。还是写一篇技术博文冷静一下吧,生活上事情不提太多,毕竟这里是技术频道。 😀

Continue reading...

SpringMVC主要流程与九大组件

(1)DispatcherServlet为SpringMVC中最核心的类,整个过程始于客户端发出一个HTTP请求,Web应用服务器接收到这个请求,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),则 Web 容器将该请求转交给 DispatcherServlet 处理。 (2)DispatcherServlet 接收到这个请求后, 将根据请求的信息(包括 URL、 HTTP方法、 请求报文头、 请求参数、 Cookie 等)及 HandlerMapping的配置找到处理请求的处理器 (Handler)。可将 HandlerMapping看作路由控制器, 将 Handler 看作目标主机。值得注意的是,在 SpringMVC中并没有定义一个 Handler 接口,实际上,任何一个 Object都可以成为请求处理器。 (3)当 DispatcherServlet...

Continue reading...

Spring IoC基础与源码剖析

Bean的概念在Spring框架出现之前就已经被提出了,笔者通过此篇文章剖析了Spring Bean在Spring IoC(控制反转)中「如何被生成」以及「如何被管理」。 注意:在本文中,bean和beanFactory开头大小写遵照Java语法中类与对象的定义。 从上图中可以看出bean可以通过三种方式定义,无论是由XML文件还是注解定义,作用都是「定义需要实例化的类」和「描述类之间的依赖」。 beanFactory通过反射技术来实例化对象并维护对象之间的关系,BeanFactory在Spring框架中是顶层接口(会在后面源码分析的部分介绍),实际上bean是被其子接口ApplicationContext的实现类来管理,实现类均表示在上图中。 PS:源码剖析部分在今后将会补充至本文下方。

Continue reading...