聊一聊 Spring 中的扩展机制之 Listener & Awre

之前 Spring 源码系列文章中大多是底层源码的分析,通过源码可以让我们能够清晰的了解 Spring 到底是什么,而不是停留于表面的认知。比如当我们要使用 @Autowired 注解时,可以拿到我们想要的 bean ,但是为什么可以是值得思考的。– 关于阅读源码

Spring源码的阅读结合日常的使用,可以帮助我们更好的掌握这个庞大的技术体系,实际的开发工作中有很多地方可以借鉴它的一些思想来帮助我们更好的实现自己的业务逻辑。本篇将以扩展点为切入点,来了解下在Spring生命周期中扩展Spring中的Bean功能。

阅读更多

Google Guava 在实际场景中的应用封装

原文:https://juejin.cn/post/6844903624519188487

毕竟西湖六月中,风光不与四时同。

接天莲叶无穷碧,映日荷花别样红。

晓出净慈寺送林子方-杨万里

周末与小伙伴约了一波西湖,这个时间荷花开的正好…,在开始文章之前先放一张“佛系”美图来镇楼!!!

最近这段时间用了下谷歌的 guava,自己封了一个缓存模板方案,特此记录,以备后续所需。

阅读更多

聊一聊 AOP:Advice 源码解析

原文:https://juejin.cn/post/6844903624250769421

在第一篇中的例子和概念介绍中我们对 Advice 有了一个初步的认知。在 Spring AOP 中,Advice 的作用就是用来描述 Spring AOP 围绕方法调用而注入的切面行为。本篇文章将从源码的角度来看一看 Advice 到底是什么样的?又是怎么完成通知的?

阅读更多

聊一聊 session 和 cookie

本来是想写 aop 设计机制的,但是最近被 session 这个东西搞得有点头大,所以就抽点时间来整理下关于 session 的一些东西。

阅读更多

关于 Mybatis 中 SQL 语句的整理

随着业务的发展,越来越多的应用系统都从一个大的系统分拆成多个小的系统,各个系统之间通过一定的通信协议进行数据交换。这样就会导致一些小的应用系统自己不用去进行数据库的操作,只需要进行一些rpc调用或者缓存就可以拿到数据进行展示。我之前参与的一个项目就是这样的情况,而我也是将近7个多月的时间没有写过一行SQL。

近期参与的一个项目的数据大多都市基于数据库来进行数据交互的,所以免不了的要写大量的 SQL,所以本篇就总结一下一些 SQL 的基本写法,以备后用。

阅读更多

日志?聊一聊 slf4j

作为一个 Java 程序员,肯定对于日志记录不会陌生,无论项目大小,日志记录都是必须的;因为好的日志可以很容易的帮助我们定位一些生产问题。

我怀念的是 无话不说 System.out.println(“这里是重要的日志”);
我怀念的是 一起作梦 System.err.println(“这里是错误的日志”);

对于日常开发来说,其实 System.out.println 挺好用的,但是为什么在实际的开发应用中不使用这个来输出日志呢?

阅读更多

Spring 源码系列-BeanDefinition

Bean的定义主要由 BeanDefinition 来描述的。作为Spring中用于包装Bean的数据结构,今天就来看看它的面纱下的真容吧

阅读更多