Fork me on GitHub
摘要: 前言 通过前面的初始化分析,我们已经把xml中的bean信息转换成BeanDefinition对象保存在DefaultListableBeanFactory的beanDefintionMap中了。这一篇我们会对单例bean的创建过程做一个分析。 概述 之前我们在分析ioc的非核心部分时,看到了许多地 阅读全文
posted @ 2018-08-19 16:16 Lucas2 阅读(461) 评论(0) 推荐(0) 编辑
摘要: 前言 上一篇对启动时的整个流程进行了大体的分析,这一篇ioc的核心部分进行分析。包括初始化过程和依赖注入过程。 概述 在分析之前先看几个类图 DefaultListableBeanFactory是ioc的一个核心类,可以看到我们关心的bean定义和单例bean都注册在它的属性上。 ClassPath 阅读全文
posted @ 2018-08-19 13:29 Lucas2 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 前言 这篇是对IOC的非核心部分进行分析,是除去了初始化和依赖注入的部分进行分析。对于非web应用,我们在使用spring时,我们会new一个上下文,比如常用的new ClassPathXmlApplicaionContext("applicationContext.xml")。 那么我们就从这句开 阅读全文
posted @ 2018-08-09 20:09 Lucas2 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 前言 上一篇,我们看了下BeanPostProcessor接口,以及它下面的各个子接口。本篇来简单地看下Aware接口。 概述 Aware这个单词翻译过来就是知道,感知的意思。在spring中,它的常见的子接口,比如BeanNameAware、BeanFactoryAware、Application 阅读全文
posted @ 2018-08-06 21:06 Lucas2 阅读(489) 评论(0) 推荐(0) 编辑
摘要: 前言 spring的强大点之一,在于它给我们提供了许多的扩展点,其中非常重要的一个接口就是BeanPostProcessor。 概述 我们可以IOC的依赖注入阶段分为三个阶段,即实例化,属性注入、初始化。在分析之前,先来熟悉下几个接口BeanPostProcessor、InstantiationAw 阅读全文
posted @ 2018-08-06 14:51 Lucas2 阅读(1047) 评论(0) 推荐(0) 编辑
摘要: 前言 通过前面的分析,我们知道了请求过来,怎么找到相应的handlerMethod。本篇对请求参数的转换进行讲解。 概述 在进行分析之前,我们回到DispatcherServlet的doDispatch方法去看一下,请求过来后真正执行业务控制器的入口是从HandlerAdapter的handle方法 阅读全文
posted @ 2018-08-05 23:33 Lucas2 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 前言 在前面分析getHandler时,我们发现返回的并不是简单的HandlerMethod而是HandlerExecutionChain,本篇就是完成对其中拦截器分析。 概述 在分析之前,我们先记住几个类名,HandlerInterceptor、HandlerInterceptorAdapter、 阅读全文
posted @ 2018-08-05 12:02 Lucas2 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 前言 前面我们简单地分析了两个过程,本文将会来介绍请求过来是如何找到对应的Controller中的方法的。 概述 在分析之前,我们先记住几个类名,HandlerMapping接口,RequestMapingHandlerMapping类,HandlerMethod类。 HandlerMapping接 阅读全文
posted @ 2018-08-04 17:01 Lucas2 阅读(2758) 评论(0) 推荐(0) 编辑
摘要: 前言 mysql这块,是阅读了《MySQL技术内幕:InnoDB存储引擎(第2版)》,再参照一些博文整理的阅读笔记。 概述 数据库系统和文件系统在特点上是有很大区别的,但数据库系统是在文件系统的基础上发展起来的,它对数据的管理更有效应。我们应该去了解数据库的各种类型的文件。下面的说明限于mysql和 阅读全文
posted @ 2018-07-24 19:23 Lucas2 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 概述 MVC大家比较熟悉, M即model,是业务处理层,与我们开发中的(service、dao、model)等对应起来; V即view,是视图层,以前jsp、freemarker、velocity等,现在都是前后端分离了。使用@ResponseBody注解把Controller方法返回的对象通过转 阅读全文
posted @ 2018-07-22 15:57 Lucas2 阅读(695) 评论(0) 推荐(0) 编辑