首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Amandajiejie
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
23
文章 23
沸点 0
赞
23
返回
|
搜索文章
赞
文章( 23 )
沸点( 0 )
Spring启动和Bean创建过程中的可扩展接口
Spring中有一些可以扩展的接口,可以用来在工作中更深度的使用Spring,这些接口大多分布在AbstractApplicationContext.refresh() 和 AbstractAutowireCapableBeanFactory.createBean()这两个方法…
SpringBoot : 启动过程简析
SpringBoot的启动,实际也就是启动了一个定制化的Spring容器。也就是创建了一个ConfigurableApplicationContext对象(AbstractApplicationContext的子类),然后执行refresh()方法。对于Spring的启动过程,…
SpringBoot : 给初学者的实用配置指引
SpringBoot可以通过parent或dependencyManagement两种方式引入。 或直接运行SpringApplication.run(SampleApp.class,args);也可以启动。 @EnableAutoConfiguration : 启用自动配置,…
AQS源码分析及核心方法解析
AQS提供了一个基于FIFO队列实现锁和同步器的基本框架。 1 同步器需要以一个单独的数字表示状态。 2 同步器需要定义一个继承AQS的内部类去实现同步属性。 3 内部类继承AQS后,必须根据需要实现 tryAcquire*/tryRelease* 去改变state。 shar…
ReentrantLock-基于AQS实现独占锁
ReentrantLock是基于AQS实现的一款独占锁,有公平锁和非公平锁两种模式。 3 Sync是一个抽象类,有两个实现类NonfairSync/FairSync,分别用来实现非公平锁/公平锁。 本文仅从ReentrantLock的lock/unlock的实现,分析如何基于A…
Condition的await/signal源码实现简析
必须在Lock.lock()后才能进行Condition.await操作,原因文章后面会讲。 Condition基于AQS实现,AQS可以参考AQS源码分析及核心方法解析。 功能:使用 当前线程 和 waitStatus值Node.CONDITION 构造新节点,并添加到条件队…
Spring AOP源码实现分步解析
最基本的使用,在创建了业务接口和实现类后,通过配置<aop:config>....</aop:config>标签来指定<aop:pointcut和<aop:advisor。示例如下: Spring环境启动过程中,会调用AbstractApplicationContext.ref…
Class.forName & ClassLoader.loadClass 比较
类的生命周期,分为加载,连接(验证,准备,解析),初始化,使用,卸载这几个过程。 Class.forName和ClassLoader.loadClass都会执行加载过程,将指定的类加载到内存中供使用。 但加载后,在默认情况下:Class.forName会初始化,ClassLoa…
30 道 Vue 面试题,内含详细讲解(涵盖入门到精通,自测 Vue 掌握程度)
本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性、框架的原理以问题的形式进行整理汇总,意在帮助作者及读者自测下 Vue 掌握的程度。本文章节结构以从易到难进行组织,建议读者按章节顺序进行阅读,当然大佬级别的请随意。希望读者读完本文,有一定的启发思考,也能对自己的 V…
手绘二维码
看到二维码,很容易猜到黑白相间的小方格就是二进制比特。那么这些比特是怎么得到的?小方格又是按照什么规则排布的?今天咱们就从零开始将一个 url 画成二维码。 考虑到大多数人可能不太了解二维码,所以先讲下基础概念。你也可以先看看左耳朵耗子写的二维码的生成细节和原理。 二维码一共有…
下一页
关注了
13
关注者
0
收藏集
0
关注标签
3
加入于
2018-03-11