03 2024 档案
摘要:概述 最近项目组在准备接入各种指标监控系统,笔者负责的部分刚好涉及到了 Druid,故记录一下在过程中遇到的各种情况和坑。 1. 直接使用 Druid 直接使用 Druid 的监控功能,需要直接将它提供的 Servlet 配置到 Web 容器中。具体可以直接参照官方文档。 配置信息采集:https:
阅读全文
摘要:概述 最近在对一个使用 JPA 的老项目进行多租户改造,由于年代过于久远,陈年屎山让人实在不敢轻举妄动,最后只能选择一个改造成本最小的方案,那就是通过拦截器改 SQL,动态添加租户 ID 作为查询条件。 本篇文章用于记录笔者基于该方案解决此问题的踩坑和思考过程,部分代码与实际代码有所出入。如果希望直
阅读全文
摘要:前言 这一年多好久没有更新自己的博客了,攒了不少笔记要整理,刚好换了电脑需要重新配环境,于是决定趁这个机会给自己用来搭建博客的 hexo 和 next 主题升个级(其实是重新安装),然后把笔记整理整理润色一下重新发到博客上。 虽然这两者的安装已经非常傻瓜式了,但是实际上一通操作下来还是踩了一些坑,于
阅读全文
摘要:概述 在之前的文章中,我们已经对 SpringAOP 的运行机制有了清晰的了解。然而,在本文中我们将补充关于 AspectJ 切面的内容。 尽管我们可以使用 AspectJ 的注解来定义切面逻辑,但实际上它们的实现仍然基于 Advisor 和方法拦截器。我们可以在最常用的 AutoProxyCrea
阅读全文
摘要:概述 在之前的文章中,我们已经对 SpringAOP 的关键组件进行了描述,并且了解了其基本操作和流程。在本文中,我们将进一步深入源码,揭示 SpringAOP 的内部实现细节,理解其运行机制的每个环节,包括切面的织入方式、代理对象的创建过程、连接点的定位与匹配等。通过对完整运行流程的深入研究,我们
阅读全文
摘要:概述 spring-aop 模块是 Spring 框架中最重要的组件之一,它为我们提供了强大的 AOP 功能,并为其他扩展功能(如声明式事务、声明式异步处理等)提供了支持。在本文中,我们将深入探讨 SpringAOP 的源码,从代理对象的创建开始,揭示 SpringAOP 的运行机制。 首先,在阅读
阅读全文
摘要:前言 SpringMVC 可以说是我们日常开发中最依赖的 Spring 组件了,它基于 Servlet 容器实现,允许我们通过注解的方式开发 Web 程序。在本篇文章,将深入 SpringMVC 源码,梳理 SpringMVC 对 Web 请求处理流程,弄懂相关核心组件的原理,最终做到在使用的时候知
阅读全文
