2019年4月27日

[tomcat]源码简析 异步/非阻塞和请求构成

摘要: SpringFramework5.0又新增加了一个功能Webflux(响应式编程),是一个典型非阻塞异步的框架。我们知道servlet3.0实现异步(AsyncContext),servlet3.1又提出了非阻塞IO。对此我一直有两点疑惑:1.tomcat8底层已经默认使用NIO了,不是已经是IO非 阅读全文

posted @ 2019-04-27 20:46 棉花也是花 阅读(1237) 评论(2) 推荐(1) 编辑

2019年4月11日

[tomcat]源码简析 结构和一次请求

摘要: 通过源码解析来理清tomcat结构和一次请求运行流程。tomcat的启动脚本可以看出启动代码类如下: Bootstrap main入口代码如下: 代码清单点评:上面的代码做了三件事情1.bootstrap的init方法,做了两件事情。 初始化加载器,这里涉及到一个问题,我们知道jdk中类加载类使用的 阅读全文

posted @ 2019-04-11 21:26 棉花也是花 阅读(484) 评论(0) 推荐(0) 编辑

[spring] 源码简析 容器启动和创建实例

摘要: Spring的IOC容器在实现控制反转和依赖注入的过程,可以划分为两个阶段 容器启动阶段 Bean实例化阶段 容器启动阶段 Bean实例化阶段 本文主要从这两个角度来解析源码的执行流程。 我们知道启动容器阶段会创建beanFactory,同时会将spring.xml中定义的beanDefinitio 阅读全文

posted @ 2019-04-11 21:16 棉花也是花 阅读(206) 评论(0) 推荐(0) 编辑

[spring] 源码简析 如何解决循环依赖?

摘要: spring是创建实例的时候,是如何解决循环依赖的呢?先来看一下isSingleton的实例getBean的整个流程: sharedInstance = getSingleton(name) 来获取缓存的单例实例(来源两处,参见图中同色系框框,一、单例创建完了会缓存一份singletonObject 阅读全文

posted @ 2019-04-11 21:14 棉花也是花 阅读(783) 评论(0) 推荐(0) 编辑

[spring] 源码简析 aop(配置和注解)

摘要: 本文从配置文件和注解两个角度介绍spring aop的具体实现。 配置文件方式AOP spring.xml的配置文件中如下: 构建BeanDefinition(Advisor)阶段 由前面的文章我们知道,在spring启动的时候,会解析xml文件,将beanDefinition注册到beanFact 阅读全文

posted @ 2019-04-11 21:12 棉花也是花 阅读(517) 评论(0) 推荐(0) 编辑

[slf4j+log] 源码解析

摘要: slf4j: The Simple Logging Facade for java即 java简单的日志门面。统一定义了一系列的日志接口,使用户可以使用统一的接口来记录日志。logback,log4j等框架都实现了这些接口,启动时动态地决定真正的日志框架。本文以slf4j+logback的源码来讲解 阅读全文

posted @ 2019-04-11 20:50 棉花也是花 阅读(618) 评论(0) 推荐(0) 编辑

导航