spring boot 源码分析(七) 事件机制 之 SpringApplicationEvent
2019独角兽企业重金招聘Python工程师标准>>>
一、前言
前面的文章我们讲解了一下spring boot配置文件加载的相关源码分析,下面我们将从源码角度讲解一下spring boot 相关的事件机制, 本章我们将从 SpringApplicationEvent类分析一下spring boot 的事件机制。
二、类图
可以从类图中看到 SpringApplicationEvent 下有很多的实现类。我们首先从SpringApplicationEvent入手看看他实际上是如何运行的
三、源码解析
SpringApplicationEvent
package org.springframework.boot.context.event;import org.springframework.boot.SpringApplication;
import org.springframework.context.ApplicationEvent;/*** 与SpringApplication相关的ApplicationEvent基类** */
@SuppressWarnings("serial")
public abstract class SpringApplicationEvent extends ApplicationEvent {private final String[] args;public SpringApplicationEvent(SpringApplication application, String[] args) {super(application);this.args = args;}public SpringApplication getSpringApplication() {return (SpringApplication) getSource();}public final String[] getArgs() {return this.args;}}
可以看到,他的内部实际上调用了父类的一些放入 如
1. SpringApplicationEvent(SpringApplication application, String[] args)
中调用了super(application) ,
2. getSpringApplication(SpringApplication application, String[] args)
中调用了 getSource();
转载于:https://my.oschina.net/u/1178126/blog/1824188
spring boot 源码分析(七) 事件机制 之 SpringApplicationEvent相关推荐
- 精尽Spring Boot源码分析 - 内嵌Tomcat容器的实现
概述 我们知道 Spring Boot 能够创建独立的 Spring 应用,内部嵌入 Tomcat 容器(Jetty.Undertow),让我们的 jar 无需放入 Servlet 容器就能直接运行. ...
- Spring Security源码分析七:Spring Security 记住我
有这样一个场景--有个用户初访并登录了你的网站,然而第二天他又来了,却必须再次登录.于是就有了"记住我"这样的功能来方便用户使用,然而有一件不言自明的事情,那就是这种认证状态的&q ...
- spring boot源码分析之SpringApplication
spring boot提供了sample程序,学习spring boot之前先跑一个最简单的示例: /** Copyright 2012-2016 the original author or aut ...
- jquery源码分析(七)——事件模块 event(二)
上一章节探讨了事件的一些概念,接下来看下jQuery的事件模块. jQuery对事件的绑定分别有几个API:.bind()/.live()/.delegate()/.on()/click(), 不管是 ...
- 实战:Spring Boot源码解读与原理分析
承载着作者的厚望,掘金爆火小册同名读物<Spring Boot源码解读与原理剖析>正式出书! 本书前身是掘金社区销量TOP的小册--<Spring Boot源码解读与原理剖析> ...
- 【赠书福利】掘金爆火小册同名《Spring Boot源码解读与原理剖析》正式出书了!...
关注我们丨文末赠书 承载着作者的厚望,掘金爆火小册同名读物<Spring Boot源码解读与原理剖析>正式出书! 本书前身是掘金社区销量TOP的小册--<Spring Boot源码解 ...
- 【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 二 )
Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...
- 【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 )
Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...
- 一步一步手绘Spring AOP运行时序图(Spring AOP 源码分析)
相关内容: 架构师系列内容:架构师学习笔记(持续更新) 一步一步手绘Spring IOC运行时序图一(Spring 核心容器 IOC初始化过程) 一步一步手绘Spring IOC运行时序图二(基于XM ...
最新文章
- android用于查询数据的方法,android: SQLite查询数据
- 基于Xcode安装CocoaPods报错
- 烂泥:高负载均衡学习haproxy之关键词介绍
- 记住:用户不是傻*,她是你的老婆大人
- 08-CSS基础-体验CSS
- BX、DI、SI、BP总结
- aspx repeater 用法_ASP.NET-----Repeater数据控件的用法总结
- 创建失败_【阿里云主机】二级域名创建失败解决方法
- HttpClient 模拟登录网易微博
- 从单体迈向Serverless的避坑指南
- snort安装使用教程
- matlab线性规划系列之基础解题
- 使用vscode快速建立vue模板
- 热爱生命 - 汪国真
- c# 中文转换为拼音或者拼音首字母
- 【C语言】共用体的定义与使用
- aspen压缩因子_利用aspen plus进行物性参数的估算
- hdu1827 1269 2767 强连通分支 刷水
- Hadoop学习——Hadoop概述
- 微信小程序之蓝牙通信模块
热门文章
- const、volatile、mutable关键字
- Python之eval函数实例解释
- 各种数据库获取前10行记录实例
- Qt:Qt实现Winsock网络编程—TCP服务端和客户端通信(多线程)
- 设计师Yoyo:为用户设计产品,让他们生活更美好
- JavaScript对象中的this属性
- java实现文件上传下载功能,javaweb文件的下载和上传功能的实现
- spring5企业级开发实战 pdf_终于总结出Spring全家桶+微服务设计模式+Netty+MySQL调优PDF...
- Git 各指令的本质,真是通俗易懂啊
- 速领,我给大家做了程序员专属红包封面~