![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
源码系列
各类源码解读
常威你为什么打来福
这个作者很懒,什么都没留下…
展开
-
spring源码-Springboot解析配置类时,解析配置类的@Import注解
系列文章目录1、spring源码-Springboot加载配置类beanDefinition2、spring源码-Springboot解析配置类时,解析配置类的内部类3、spring源码-Springboot解析配置类时,解析配置类的@Import注解4、spring源码-springboot中各种Conditional注解之ConditionalOnJava分析5、Spring源码-springboot中注入filter6、Spring源码-Springboot使用内置tomcat配置Dis原创 2021-09-21 19:47:33 · 222 阅读 · 0 评论 -
spring源码-Springboot解析配置类时,解析配置类的内部类
系列文章目录spring源码-Springboot加载配置类beanDefinitionspring源码-Springboot解析配置类时,解析配置类的内部类spring源码-springboot中各种Conditional注解之ConditionalOnJava分析Spring源码-springboot中注入filterSpring源码-Springboot使用内置tomcat配置DispatcherServletSpring源码-Springboot不使用默认的tomcat,使用外部tom原创 2021-09-21 18:37:00 · 589 阅读 · 0 评论 -
源码-mybatis中为什么mapper的方法不能重载(方法名相同)
目录前言XMLMapperBuilder类XMLStatementBuilder类Configuration类前言基于mybatis 3.4.1版本,mybatis从XMLMapperBuilder开始解析,当解析到我们的select、insert等标签时,获取标签的id属性值,以 (mapper接口全路径 + 标签对应的id属性值)为key,MappedStatement为value,放入Configuration的属性mappedStatements中,而mappedStatements是Stric原创 2021-09-12 19:33:16 · 1520 阅读 · 0 评论 -
源码-ConditionObject
线程之间交互例子Lock lock = new ReentrantLock();Condition condition = lock.newCondition();Thread t1 = new Thread("t1") { @Override public void run() { try { lock.lock(); condition.await(); System.out.println(T原创 2021-04-17 13:10:03 · 68 阅读 · 0 评论 -
源码-RentrantLock
构造函数/** * Creates an instance of {@code ReentrantLock} with the * given fairness policy. * * @param fair {@code true} if this lock should use a fair ordering policy */public ReentrantLock(boolean fair) { sync = fair ? new FairSync() : new Nonfai原创 2021-04-17 12:54:41 · 72 阅读 · 0 评论 -
源码-ScheduledThreadPoolExecutor
目录ScheduledFutureTaskDelayedWorkQueueFutureTask// 初始化周期线程池public ScheduledThreadPoolExecutor(int corePoolSize) { super(corePoolSize, Integer.MAX_VALUE, 0, NANOSECONDS, new DelayedWorkQueue());}// 关键方法,周期执行任务public ScheduledFuture<?>原创 2021-08-11 15:30:40 · 108 阅读 · 0 评论 -
源码-mybatis-spring:2.0.4
目录1、mybatis接入spring1、mybatis接入spring主要是MapperScannerConfigurer类,这是一个后置处理器,用于后置处理beanDefinition,这个类在bean开始创建之前将扫描到的mapper的beanDefinition的beanClass属性替换为MapperFactoryBean类,beanName还是mapper的name。spring创建类是根据beanDefinition定义的beanClass属性来反射创建对象的。然后以(beanName:根原创 2021-08-11 15:14:45 · 148 阅读 · 0 评论 -
源码-ConcurrentHashMap
文章目录initTable方法addCount方法transfer方法搬运过程(并没有改变原有链表之间的指向)其他线程帮忙搬运过程initTable方法// sizeCtl变量在第一次初始化数组方法中设置为数组长度的4分之3private final Node<K,V>[] initTable() { Node<K,V>[] tab; int sc; while ((tab = table) == null || tab.length == 0)原创 2021-08-10 09:59:27 · 69 阅读 · 0 评论