SpringBoot 源码解析 (五)----- Spring Boot的核心能力 - 自动配置源码解析

在上一篇博客中分析了springBoot启动流程,大体的轮廓只是冰山一角。今天就来看一下springBoot的亮点功能:自动化装配功能。先从@SpringBootApplication开始。在启动流程章节中,我们讲述了SpringBoot2大致的启动步骤,并进行了源码详解。但是在刷新容器这块并未展开,refreshContext(context);简单的一行代码,背后却做了太多事情。所以为了不喧宾夺主...

Mybaits 源码解析 (十)----- 全网最详细,没有之一:Spring-Mybatis框架使用与源码解析

在前面几篇文章中我们主要分析了Mybatis的单独使用,在实际在常规项目开发中,大部分都会使用mybatis与Spring结合起来使用,毕竟现在不用Spring开发的项目实在太少了。本篇文章便来介绍下Mybatis如何与Spring结合起来使用,并介绍下其源码是如何实现的。Spring-Mybatis使用添加maven依赖 <dependency> <groupId>org.springframewo...

SpringBoot 源码解析 (八)----- Spring Boot 精髓:事务源码解析

本篇来讲一下SpringBoot是怎么自动开启事务的,我们先来回顾一下以前SSM中是如何使用事务的SSM使用事务导入JDBC依赖包众所周知,凡是需要跟数据库打交道的,基本上都要添加jdbc的依赖,在Spring项目中,加入的是spring-jdbc依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-j...

Spring源码解析02:Spring IOC容器之XmlBeanFactory启动流程分析和源码解析

到细节建议看下上面的时序图。 整个就是bean的加载阶段。通过解析XML中的标签元素生成beanDefinition注册到beanDefinitionMap中。四. XmlBeanFactory启动源码解析 按照XmlBeanFactory启动流程的先后顺序整理的关键性代码索引列表,其中一级索引为类,二级索引对应其类下的方法。符号 ---▷表示接口的实现。建议可以观察方法索引的参数变化(资源转换)来分析...

Mybaits 源码解析 (十)----- 全网最详细,没有之一:Spring-Mybatis框架使用与源码解析

摘自:https://www.cnblogs.com/java-chen-hao/p/11833780.html Mybaits 源码解析 (十)----- 全网最详细,没有之一:Spring-Mybatis框架使用与源码解析   目录 Spring-Mybatis使用 添加maven依赖 在src/main/resources下添加mybatis-config.xml文件 在src/main/reso...

Mybaits 源码解析 (十)----- 全网最详细,没有之一:Spring-Mybatis框架使用与源码解析

在前面几篇文章中我们主要分析了Mybatis的单独使用,在实际在常规项目开发中,大部分都会使用mybatis与Spring结合起来使用,毕竟现在不用Spring开发的项目实在太少了。本篇文章便来介绍下Mybatis如何与Spring结合起来使用,并介绍下其源码是如何实现的。Spring-Mybatis使用添加maven依赖 <dependency> <groupId>org.springframew...

Python优秀开源项目Rich源码解析

下面我们来看render(renderable, render_options)函数的渲染逻辑,该函数里会调用下面的代码render_iterable = renderable.__rich_console__(self, options) 在函数声明里renderable对象是RenderableType类型的,但实际上Text类型的,并且这两种类型没有继承关系,这里没太想明白作者为什么这样搞。所以...

[源码解析] 当 Java Stream 遇见 Flink

[源码解析] 当 Java Stream 遇见 Flink[ToC]0x00 摘要在分析Alink源码的时候,发现Alink使用了 Java Stream,又去Flink源码搜索,发现Flink也有大量使用。一时兴起,想看看 Java Stream 和 Flink 这种流处理框架的异同点。当然这种比较还是注重于理念和设计思路上的。因为就应用领域和复杂程度来说, Java Stream 和 Flink...

Vue源码解析,keep-alive是如何实现缓存的?

前言在性能优化上,最常见的手段就是缓存。对需要经常访问的资源进行缓存,减少请求或者是初始化的过程,从而降低时间或内存的消耗。Vue 为我们提供了缓存组件 keep-alive,它可用于路由级别或组件级别的缓存。但其中的缓存原理你是否了解,组件缓存渲染又是如何工作。那么本文就来解析 keep-alive 的原理。LRU策略在使用 keep-alive 时,可以添加 prop 属性 include、e...

源码解析JDK1.8-HashMap链表成环的问题解决方案

前言 上篇文章详解介绍了HashMap在JDK1.7版本中链表成环的原因,今天介绍下JDK1.8针对HashMap线程安全问题的解决方案。jdk1.8 扩容源码解析public class HashMap<K,V> extends AbstractMap<K,V>   implements Map<K,V>, Cloneable, Serializable {      // jdk1.8 Has...
© 2021 LMLPHP 关于我们 联系我们 友情链接 耗时0.146554(s)
2021-02-28 15:21:01 1614496861