排序
透过源码,捋清楚循环依赖到底是如何解决的!
@[toc] 以下内容基于 Spring6.0.4。 关于 Spring 循环依赖,松哥已经连着发了三篇文章了,本篇文章松哥从源码的角度来和小伙伴们捋一捋 Spring 循环依赖到底是如何解决了。如果没看过前面的文章...
spring多数据源动态切换的实现原理及读写分离的应用
简介 AbstractRoutingDataSource是Spring框架中的一个抽象类,可以实现多数据源的动态切换和路由,以满足复杂的业务需求和提高系统的性能、可扩展性、灵活性。 应用场景 多租户支持:对于多租户...
spring多数据源动态切换的实现原理及读写分离的应用 | 京东云技术团队
简介 AbstractRoutingDataSource是Spring框架中的一个抽象类,可以实现多数据源的动态切换和路由,以满足复杂的业务需求和提高系统的性能、可扩展性、灵活性。 应用场景 多租户支持:对于多租户...
spring源码4 — 内置的后置处理器PostProcess加载源码 (上)
可以学习到什么? 1. BeanFactoryPostProcessor调用过程源码剖析 2. 配置类的解析过程源码 3. 配置类@Configuration加与不加的区别 4. 重复beanName的覆盖规则 5. @ComponentScan的解析原理 一、...
实战!用 Spring Gateway 配合 Sa-Token 实现微服务无感鉴权
实战!用 Spring Gateway 配合 Sa-Token 实现微服务无感鉴权 前言 众所周知,Spring Cloud Gateway 是一个基于 Spring WebFlux 技术构建的高性能微服务网关,通过 Spring Cloud Gateway,我们可...
从根上理解Cglib与JDK动态代理
最近在阅读到了Spring源码对于两种动态代理使用在不同场景下的使用,两种方式各有利弊写一篇文加深自己的认识。文中对于源码的涉及较少,更多的是作者自己的理解和举例,然后通过部分源码验证。...
分布式任务调度框架之开山鼻祖:Quartz
1.简介 最近我司上线使用了分布式任务调度框架:XXL-JOB,方便对任务的管理控制。本来一开始就想讲述一下该框架,但是在学习了解过程中发现该框架式基于Quartz思想开发实现的,Quartz 是一个很...
解锁Spring组件扫描的新视角
本文分享自华为云社区《Spring高手之路10——解锁Spring组件扫描的新视角》,作者: 砖业洋__。 首先,我们将探讨一些Spring框架中IOC(Inversion of Control)的高级特性,特别是组件扫描的相...
第13节 Spring源码之 AOP 实例化过程
本篇笔记将重点整理 Spring 是如何解析AOP的配置,并将配置实例化注入到容器中,包括xml配置、注解配置。 一、Aop的简单案例 定义公共业务类 @Service public class PrintMsgService { public S...
apollo部署和nginx代理问题解决
我正在参加「金石计划5.0」 一、写在前面 今天我们来学习一个分布式环境下,配置管理中心。 很多小伙伴可能会说:呵呵,用nacos不是挺好? 哈哈,我只能说:nacos确实是挺好的,而且还包含了注...
从源码层面深度剖析Spring循环依赖 | 京东云技术团队
以下举例皆针对单例模式讨论 图解参考 www.processon.com/view/link/6… 1、Spring 如何创建Bean? 对于单例Bean来说,在Spring容器整个生命周期内,有且只有一个对象。 Spring 在创建 Bean ...
从源码层面深度剖析Spring循环依赖
**以下举例皆针对单例模式讨论** 图解参考 https://www.processon.com/view/link/60e3b0ae0e3e74200e2478ce 1、Spring 如何创建Bean? 对于单例Bean来说,在Spring容器整个生命周期内,有且只有...
Spring高手之路11——BeanDefinition解密:构建和管理Spring Beans的基石
BeanDefinition是Spring中一个非常重要的概念,它包含了Spring容器用于创建、配置Bean所需的所有信息。理解BeanDefinition可以帮助我们深入掌握Spring的内部工作机制。 1. 探索BeanDefinitio...
Spring Boot 最佳实践
本文翻译自国外论坛 medium,原文地址:medium.com/@raviyasas/…,原文作者:Ravi Yasas Spring Boot 是一种广泛使用且非常流行的企业级高性能框架。以下是一些最佳实践和一些技巧,我们可以使...
spring源码3 — ioc加载的整体流程
可以学习到什么? 0. spring ioc整体脉络 1. 描述BeanFactory 2. BeanFactory和ApplicationContext的区别 3. 简述SpringIoC的加载过程 4. 简述Bean的生命周期 5. Spring中有哪些扩展接口及调用机...
如果你需要使用重试机制,请使用Spring官方的Spring Retry
Spring Retry 是 Spring Framework 中的一个模块,提供了一种简单的方式来在应用程序中实现重试机制。 在应用程序中,如果遇到了一些不可避免的错误,比如网络连接失败、数据库连接失败等,我们...
Spring Boot Jar包与远程调试
Spring Boot 打包后的结构 jar包就是个压缩包 解压缩之后目录结构如下 : 可以发现,自己编的类在classes目录。 配置文件application.properties就在其下一层,那么,在运行时,就可以明确配置...
GET和POST的区别,java模拟postman发post请求
大家好,我是哪吒。 众所周知,SpringMVC分了很多请求方式,get post put delete,它们有什么区别呢?Java怎么模拟POST请求呢?今天就来说道说道。 一、先说一下get和post GET和POST是HTTP请求...
SpringBoot ApplicationContextInitializer系统初始化器原理解析
前言 Spring提供了ApplicationContextInitializer接口作为系统初始化器的实现,其本质就是Spring容器刷新之前执行的一个回调函数,可以让我们非常方便在Spring容器刷新前,往ApplicationContext...
SpringMVC流程分析(六):SpringMVC为处理器选择合适的适配器的秘密
本系列文章皆在分析SpringMVC的核心组件和工作原理,让你从SpringMVC浩如烟海的代码中跳出来,以一种全局的视角来重新审视SpringMVC的工作原理. 思考,输出,沉淀。用通俗的语言陈述技术,让自...