排序
从源码层面深度剖析Spring循环依赖
**以下举例皆针对单例模式讨论** 图解参考 https://www.processon.com/view/link/60e3b0ae0e3e74200e2478ce 1、Spring 如何创建Bean? 对于单例Bean来说,在Spring容器整个生命周期内,有且只有...
如何通过三级缓存解决 Spring 循环依赖
以下内容基于 Spring6.0.4。 这个其实是一个特别高频的面试题,松哥也一直很想和大家仔细来聊一聊这个话题,网上关于这块的文章很多,但是我一直觉得要把这个问题讲清楚还有点难度,今天我来试...
Spring 的依赖注入
Spring 的依赖注入 每博一文案 '在千千万万个选择里',我永远选择去做哪些我认为值得的事,我可能干得很漂亮,也可能搞得一塌糊涂。 但没关系,重要的是我为之努力过。”我们很难做好每件事,让...
Spring AOP 中的代理对象是怎么创建出来的?
@[toc] 今天和小伙伴们聊一聊 Spring AOP 中的代理对象是怎么创建出来的,透过这个过程再去熟悉一下 Bean 的创建过程。 最近几篇文章都是和小伙伴们聊 Spring 容器的一些使用细节,结合这些细节...
玩一玩编程式 AOP
@[toc] 平时我们项目中涉及到 AOP,基本上就是声明式配置一下就行了,无论是基于 XML 的配置还是基于 Java 代码的配置,都是简单配置即可使用。声明式配置有一个好处就是对源代码的侵入小甚至是...
Spring Boot业务代码中使用@Transactional事务失效踩坑点总结
1.概述 接着之前我们对Spring AOP以及基于AOP实现事务控制的上文,今天我们来看看平时在项目业务开发中使用声明式事务@Transactional的失效场景,并分析其失效原因,从而帮助开发人员尽量避免踩...
SpringBoot Banner输出原理解析
前言 在SpringBoot启动时,会在控制台看到一个Spring Banner输出,本文主要讲解一下配置Banner的几种方式,以及最后从源码的角度进行原理分析。 几种Banner的实现方式 默认Banner SpringBoot默...
Spring6 初始
Spring6 初始 每博一文案: 人生的态度是:抱有最大的希望。 尽最大的努力,做最坏的打算。 —————— 柏拉图《理想国》 1. 初始 Spring6 阅读以下代码: package com.powernode.oa.controlle...
【Java】戏说反射-也许对你有帮助
Hi,大家好,我是抢老婆酸奶的小肥仔。 反射,在我们日常开发中无时无刻,被大量运用在框架代码和工具代码中,反射可以通俗点讲就是一个类的自我剖析,通过反射可以获取到这个类所有信息,包括:...
参考Spring MVC源码实现的一个简易版Spring MVC框架
Mini Spring MVC 参考Spring MVC源码实现的一个简易版Spring MVC框架 1 项目结构 1.1 创建Mvaen工程 因为SpringMVC的底层原理是利用Servlet和Java反射机制,所以主要依赖文件为Servlet,maven配...
apollo部署和nginx代理问题解决
我正在参加「金石计划5.0」 一、写在前面 今天我们来学习一个分布式环境下,配置管理中心。 很多小伙伴可能会说:呵呵,用nacos不是挺好? 哈哈,我只能说:nacos确实是挺好的,而且还包含了注...
@ControllerAdvice注解使用及原理探究 | 京东物流技术团队
最近在新项目的开发过程中,遇到了个问题,需要将一些异常的业务流程返回给前端,需要提供给前端不同的响应码,前端再在次基础上做提示语言的国际化适配。这些异常流程涉及业务层和控制层的各个...
SpringSecurity6–认证和授权的原理
一、Spring Security简介 Spring Security是一个基于Spring框架的安全解决方案,提供了认证和授权等安全方面的大服务,包括身份认证和权限处理两大服务。Spring Security的实现依赖于大量的过滤...
去字节面试,直接让人出门左拐:Bean 生命周期都不知道!
大家好,我是楼仔! Spring Bean 的生命周期,面试时非常容易问,这不,前段时间就有个粉丝去字节面试,因为不会回答这个问题,整个面试才 20 分钟,就被请出来了。 大家都知道,如果面试仅仅是...
Spring Authorization Server入门 (十三) 实现联合身份认证,集成Github与Gitee的OAuth登录
前言 什么是联合身份认证? 通过Spring Security OAuth2 Client(Login)模块集成第三方登录至自己的认证服务中,使用联合身份认证只需要请求认证服务,不通过前端来跳转三方的授...
IDEA建议:不要在字段上使用@Autowire了!
在使用IDEA写Spring相关的项目的时候,在字段上使用@Autowired注解时,总是会有一个波浪线提示:Field injection is not recommended. 纳尼?我天天用,咋就不建议了,今天就来一探究竟。 众所...
数据库连接池提前初始化引发的异常
背景 我们线上一个项目在发版本时,经常会有部分实例无法正常启动的情况,特别是在没有进行灰度发布的场景下,基本上很难正常的启动成功,异常信息如下: 问题分析 看日志可以很容易看出来,启...
Spring 中一个少见的引介增强 IntroductionAdvisor
我们平时做 AOP 开发的时候,基本上都是增强某一个方法,在某一个方法执行之前或者执行之后做一些事情,这种叫做 PointcutAdvisor,实际上,Spring 中的 Advisor 大致可以分为两种类型,除了 Po...
一起来学习@PostConstruct注解
引言: 最近在开发过程中发现有些同事对@PostConstruct这个注解使用上有一些问题,而且在概念上也有一些模糊,姑且今天就好好的说一下它。@PostConstruct注解是Java中一个强大的特性,它允许开...
实战!用 Spring Gateway 配合 Sa-Token 实现微服务无感鉴权
实战!用 Spring Gateway 配合 Sa-Token 实现微服务无感鉴权 前言 众所周知,Spring Cloud Gateway 是一个基于 Spring WebFlux 技术构建的高性能微服务网关,通过 Spring Cloud Gateway,我们可...