随笔分类 -  源码

上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页
源码
摘要:1 前言 今天我们来看看 Apollo的东西,比如我们的项目引入了 Apollo,那么我们的服务启动的时候,会首先从Apollo读取配置那么它是怎么做的呢,这节我们就来瞅瞅。 Apollo版本:1.7 大家可以自己去下载安装一个哈,方便自己调试,边看边调试可以有个更好的理解哈。 2 源码分析 2.1 阅读全文
posted @ 2023-08-29 08:13 酷酷- 阅读(957) 评论(0) 推荐(0)
摘要:1 前言 Spring的核心思想就是容器,当容器refresh的时候,外部看上去风平浪静,其实内部则是一片惊涛骇浪,汪洋一片。Springboot更是封装了Spring,遵循约定大于配置,加上自动装配的机制。很多时候我们只要引用了一个依赖,几乎是零配置就能完成一个功能的装配。 我非常喜欢这种自动装配 阅读全文
posted @ 2023-08-22 07:00 酷酷- 阅读(223) 评论(0) 推荐(0)
摘要:1 前言 这节我们来讨论下 Spring MVC 和 Web容器(这里我们拿Tomcat来说)两者启动的思考,不知道大家有没有想过,我们的 SpringBoot 是在启动的时候会创建 Tomcat出来,那么我Tomcat什么时候知道你 SpringBoot 已经启动完毕可以处理请求呢?或者说 Spr 阅读全文
posted @ 2023-08-16 07:09 酷酷- 阅读(196) 评论(0) 推荐(0)
摘要:1 前言 这节我们来看看 Rocket MQ的一个小东西,就是我们平时发消息,消息里边有个 messageId,它是全局唯一的,就好奇是谁生成的?什么时候生成的?怎么生成的?我们跟进源码看下。 我这里看的是云消息队列里的开发包哈。 2 源码分析 2.1 消息发送过程 Rocket MQ作为消息中间件 阅读全文
posted @ 2023-07-21 07:20 酷酷- 阅读(1261) 评论(0) 推荐(0)
摘要:1 前言 这节我们看个源码相关的东西,就是我们平时写的 Mapper 接口是怎么注入到 Spring 中呢? 我们会去想: 比如Mapper接口在启动时是如何被发现的? Mapper接口我们知道肯定是会创建代理的,那么代理对象又是如何创建的呢? 我们接下来就来看看。 1.1 入口分析 我们的 Map 阅读全文
posted @ 2023-06-26 16:41 酷酷- 阅读(1158) 评论(0) 推荐(1)
摘要:1 前言 本节我们主要是讲讲@Value的使用以及它是什么时候解析的并且解析后是如何注入值的呢?我们来看看。 2 @Value的使用 @Value 注解可以用来将外部的值动态注入到 Bean 中,在 @Value 注解中,可以使${} 与 #{} ,它们的区别如下: (1)@Value("${}") 阅读全文
posted @ 2023-05-15 15:31 酷酷- 阅读(17523) 评论(0) 推荐(1)
摘要:1 前言 不知道大家对于配置文件的加载有没有考虑过是什么时候加载解析的,这节我们就来看看。 2 执行入口 我们就先来看看加载配置的入口,核心类就是 ConfigFileApplicationListener主要作用就是读取应用的配置文件并add到Environment的PropertySources 阅读全文
posted @ 2023-05-15 08:16 酷酷- 阅读(1189) 评论(0) 推荐(1)
摘要:1 前言 这节我们就来看看事务的加载过程,前置知识是大家可以先看看我之前写的SpringBoot的自动装配过程哈。因为事务在SpringBoot中,是通过自动装配作为入口点,然后转换为加载AOP的执行流程。 2 加载过程 SpringBoot启动会扫描spring.factories文件,加载所有需 阅读全文
posted @ 2023-05-12 14:56 酷酷- 阅读(378) 评论(0) 推荐(0)
摘要:1 前言 本节我们开始来看看 Spring 事务哈,大家看之前首先要看过 IOC、AOP、甚至代理哈,如果这些你不知道原理,你看任何东西都会很费劲,比如Bean的生命周期、AOP的切入时机、什么时候创建代理以及执行时机,这些不知道的话,你就看事务的话,会很懵,当然前提是大家是带着思考看的哈,单纯看不 阅读全文
posted @ 2023-05-12 10:45 酷酷- 阅读(146) 评论(0) 推荐(0)
摘要:1 前言 我们都知道 SpringBoot 有个自动装配的机制,那你们知道平时如何使用么,以及他是什么时候执行的么,那么本节我们就来看看。 2 为什么要有自动装配 我们经历过SSM时期的时候,比如要引进Redis,是不是要先要导Maven依赖,还要进行大量的配置Bean,然后才能使用,而使用 Spr 阅读全文
posted @ 2023-05-10 15:48 酷酷- 阅读(847) 评论(0) 推荐(1)
摘要:1 前言 上节我们看了上下文的创建和准备,那么我们这节就来看看刷新上下文。 2 刷新上下文 首先就是我们的 run 方法,执行刷新上下文 refreshContext(context): // ###run方法 refreshContext(context); // ###SpringApplica 阅读全文
posted @ 2023-05-06 17:37 酷酷- 阅读(587) 评论(0) 推荐(0)
摘要:1 前言 上节我们看了下环境准备,那么接下来我们就要看重头了,就是创建和准备上下文了。 // 创建上下文 context = createApplicationContext(); // 加载异常解析报告类 exceptionReporters = getSpringFactoriesInstanc 阅读全文
posted @ 2023-05-06 16:22 酷酷- 阅读(573) 评论(0) 推荐(0)
摘要:1 前言 这节我们来看看 Spingboot 启动前的一些环境准备工作: // 封装请求参数 ApplicationArguments applicationArguments = new DefaultApplicationArguments(args); // 准备环境变量,包含系统属性和用户配 阅读全文
posted @ 2023-05-06 13:51 酷酷- 阅读(465) 评论(0) 推荐(0)
摘要:1 前言 我们都知道 SpringBoot 启动的时候,@SpringBootApplication 注解里是会有一个@ComponentScan注解,用于扫描当前启动类目录下的所有组件,那它是什么时候执行的呢,具体的执行过程是怎么样的我们这节就来看一下。 2 @ComponentScan 注解作用 阅读全文
posted @ 2023-05-06 07:44 酷酷- 阅读(1218) 评论(0) 推荐(0)
摘要:1 前言 我们看到 SpringBoot 启动的时候,会在每个时机执行监听器,这节我们就来看看,加载监听器的过程我们就不说了哈,上节说过了哈,本节我们主要看: (1)SpringApplicationRunListeners 的创建过程 (2)监听器的执行时机有哪些 (3)监听器的执行过程 三个方面 阅读全文
posted @ 2023-05-05 15:07 酷酷- 阅读(2395) 评论(0) 推荐(2)
摘要:1 前言 本节主要讲下 SpringBoot 启动的时候,加载初始化器、监听器的过程哈。 2 加载时机 我们先来看下加载的时机,也就是什么时候加载的呢,就是我们 SpringBoot启动的时候,创建 SpringApplication的时候就会去加载的,我们看下: @SpringBootApplic 阅读全文
posted @ 2023-05-04 15:54 酷酷- 阅读(451) 评论(0) 推荐(1)
摘要:1 前言 从基础讲起,IO底层原理是隐藏在Java编程知识 之下的基础知识,是开发人员必须掌握的基本原理,可以说是基础的 基础,更是大公司面试通关的必备知识。本节从操作系统的底层原理入手,通过图文并茂的方式为大家深入剖析高并发IO的底层原理,并介绍如何通过设置来让操作系统支持高并发。 2 IO读写的 阅读全文
posted @ 2023-04-26 08:35 酷酷- 阅读(568) 评论(2) 推荐(0)
摘要:1 前言 本节我们来看另一个Java基础知识,内部类相关的东西。 2 内部类 2.1 分类 Java 类中不仅可以定义变量和方法,还可以定义类,这样定义在类内部的类就被称为内部类。根 据定义的方式不同,内部类分为静态内部类,成员内部类,局部内部类,匿名内部类四种。 2.2 静态内部类 定义在类内部的 阅读全文
posted @ 2023-04-24 06:51 酷酷- 阅读(42) 评论(0) 推荐(0)
摘要:1 前言 本节我们来看另一个Java基础知识,就是注解哈。 2 注解 2.1 概念 Annotation(注解)是 Java 提供的一种对元程序中元素关联信息和元数据(metadata)的途径 和方法。Annatation(注解)是一个接口,程序可以通过反射来获取指定程序中元素的 Annotatio 阅读全文
posted @ 2023-04-23 08:01 酷酷- 阅读(32) 评论(0) 推荐(0)
摘要:1 前言 本节我们来看一个Java利器就是反射,反射很重要是开发框架的基础核心,主要就是从类元数据信息中解析各种信息,我们就来看看。 2 反射简介 2.1 动态语言 动态语言,是指程序在运行时可以改变其结构:新的函数可以引进,已有的函数可以被删除等结 构上的变化。比如常见的 JavaScript 就 阅读全文
posted @ 2023-04-23 07:25 酷酷- 阅读(105) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页