java
文章平均质量分 69
qq1984654893
学习中的程序员
展开
-
Spring Bean的包扫描的实现
Spring之Bean的包扫描的实现我们知道,Spring可以通过包扫描将使用@Component注解定义的Bean定义到容器中。今天就来探究下他实现的原理。首先,找到@Component注解的处理类注解的定义,一般都需要配套的对注解的处理才能完成注解所代表的功能。所以我们通过@Component注解的用到的地方,来查找可能的处理逻辑;我们先进入Spring的项目,在IDEA里面用Ctrl和鼠标左键点击Component注解的名称,IDEA会显示出使用到这个类的位置,我们从弹出的列表中找到一个名称像原创 2021-01-10 21:18:11 · 573 阅读 · 1 评论 -
Java中ThreadLocal的简单介绍和原理分析
使用场景可以用于在线程范围内共享数据,同时不会有并发问题。有许多常用的库的都用到了 ThreadLocal,例如 Mybatis 的分页插件 PageHelper 的 PageMethod ,Spring中的 ThreadLocalSecurityContextHolderStrategy 等使用样例public class ThreadLocalTest { private final ThreadLocal<Long> value = new ThreadLocal<&原创 2021-01-02 23:07:31 · 99 阅读 · 0 评论 -
SpringBoot中CommandLineRunner的源码实现
一个简单的CommandLineRunner的使用案例@Componentpublic class TestTask implements CommandLineRunner { @Override public void run(String... args) throws Exception { System.out.println("runner"); }}我们在run方法中打断点,调试以获得执行CommandLineRunner时的调用栈我们可以看原创 2021-01-01 16:32:24 · 204 阅读 · 2 评论