会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Loading
menu
程序员小航
博客园
首页
归档
标签
新随笔
联系
订阅
管理
随笔 - 102
文章 - 0
评论 - 21
阅读 -
42687
上一页
1
2
3
4
5
6
下一页
2021年1月19日
Spring 源码学习 06:AnnotatedBeanDefinitionReader
摘要: BeanDefinition 的概念也了解了,也知道一个 Bean 在 Spring 中定义的信息有哪些之后,继续言归正传。
阅读全文
posted @ 2021-01-19 11:03 程序员小航
阅读(580)
评论(0)
推荐(0)
编辑
Spring 源码学习 05:BeanDefinition 概念及其实现
摘要: BeanDefinition:顾名思义,就是 Bean 的定义,是用来描述一个 Bean 都有什么信息。前面说在初始化 `DefaultListableBeanFactory` 时,会初始化一个 `Map
阅读全文
posted @ 2021-01-19 11:02 程序员小航
阅读(305)
评论(0)
推荐(0)
编辑
2020年12月3日
Spring 源码学习 04:初始化容器与 DefaultListableBeanFactory
摘要: 初始化容器 与 DefaultListableBeanFactory
阅读全文
posted @ 2020-12-03 08:32 程序员小航
阅读(219)
评论(0)
推荐(0)
编辑
2020年12月2日
Spring 源码学习 03:创建 IoC 容器的几种方式
摘要: 根据元数据配置方式不同,对应的几种创建容器的方式
阅读全文
posted @ 2020-12-02 08:31 程序员小航
阅读(118)
评论(0)
推荐(0)
编辑
2020年12月1日
Spring 源码学习 02:关于 Spring IoC 和 Bean 的概念
摘要: 在前一篇文章中介绍了如何构建源码阅读环境,既然构建好了源码环境,本地也可以正常运行,那就开始阅读源码吧!
阅读全文
posted @ 2020-12-01 12:15 程序员小航
阅读(106)
评论(0)
推荐(0)
编辑
2020年11月27日
Spring 源码阅读环境的搭建
摘要: 本文记录了 Spring 源码环境的搭建方式,以及踩过的那些坑!当前版本:5.3.2-SNAPSHOT。
阅读全文
posted @ 2020-11-27 10:15 程序员小航
阅读(2272)
评论(0)
推荐(0)
编辑
2020年11月24日
DocView 现在支持自定义 Markdown 模版了!
摘要: 有小伙伴反馈说希望可以自定义 Markdown 模版,这样就可以导出自己想要的样式了!这个功能可以有,毕竟大家不可能都生成一模一样的文档。现在来一起看看如何实现自定义模版吧!
阅读全文
posted @ 2020-11-24 10:15 程序员小航
阅读(83)
评论(0)
推荐(0)
编辑
2020年11月19日
Dubbo 接口,导出 Markdown ,这些功能 DocView 现在都有了!
摘要: 自从 DocView 发布了简陋的第一版之后,就不断地有小伙伴提建议意见等等,希望扩展各种功能。这不,时隔两周,DocView 又发布了新版本,本次的更新主要涉及到支持 Dubbo,以及支持导出单个文档为 Markdown 文件。来一起看看新功能吧!
阅读全文
posted @ 2020-11-19 10:18 程序员小航
阅读(349)
评论(0)
推荐(0)
编辑
2020年11月16日
线程池 ThreadPoolExecutor 原理及源码笔记
摘要: 前面在学习 JUC 源码时,很多代码举例中都使用了线程池 ThreadPoolExecutor ,并且在工作中也经常用到线程池,所以现在就一步一步看看,线程池的源码,了解其背后的核心原理。
阅读全文
posted @ 2020-11-16 10:40 程序员小航
阅读(375)
评论(0)
推荐(1)
编辑
2020年11月9日
Spring 自调用事务失效,你是怎么解决的?
摘要: 相信大家都遇到一种事务失效场景,那就是 Spring 自调用,就是在 Service 方法内,调用另一个加 @Transactional 注解的方法,发现事务失效,这时候你是怎么解决的呢?
阅读全文
posted @ 2020-11-09 07:52 程序员小航
阅读(597)
评论(2)
推荐(1)
编辑
2020年11月8日
写时复制集合 —— CopyOnWriteArrayList
摘要: JUC 下面还有一个系列的类,都是 CopyOnWriteXXX ,意思是写时复制,这个究竟是怎么回事?那就以 CopyOnWriteArrayList 为切入点,一起了解写时复制是怎么回事?
阅读全文
posted @ 2020-11-08 22:31 程序员小航
阅读(64)
评论(0)
推荐(0)
编辑
非阻塞的无界线程安全队列 —— ConcurrentLinkedQueue
摘要: JUC 下面的相关源码继续往下阅读,这就看到了非阻塞的无界线程安全队列 —— ConcurrentLinkedQueue,来一起看看吧。
阅读全文
posted @ 2020-11-08 22:27 程序员小航
阅读(168)
评论(0)
推荐(0)
编辑
APP 莫名崩溃,开始以为是 Header 中 name 大小写的锅,最后发现原来是容器的错!
摘要: APP 莫名崩溃,开始以为是 Header 中 name 大小写的锅,最后发现原来是容器的错!
阅读全文
posted @ 2020-11-08 22:26 程序员小航
阅读(489)
评论(0)
推荐(0)
编辑
几行代码轻松实现跨系统传递 traceId,再也不用担心对不上日志了!
摘要: 新项目查日志太麻烦,多台机器之间查来查去,还不知道是不是同一个请求的。打印日志时使用 MDC 在日志上添加一个 traceId,那这个 traceId 如何跨系统传递呢?
阅读全文
posted @ 2020-11-08 22:23 程序员小航
阅读(1875)
评论(0)
推荐(0)
编辑
老大问我:“建表为啥还设置个自增 id ?用流水号当主键不正好么?”
摘要: 又要开始新项目了,一顿操作猛如虎,梳理流程加画图。这不,开始对流程及表结构了。
阅读全文
posted @ 2020-11-08 22:21 程序员小航
阅读(181)
评论(0)
推荐(0)
编辑
基于链表的有界阻塞队列 —— LinkedBlockingQueue
摘要: 上一节看了基于数据的有界阻塞队列 ArrayBlockingQueue 的源码,通过阅读源码了解到在 ArrayBlockingQueue 中入队列和出队列操作都是用了 ReentrantLock 来保证线程安全。下面咱们看另一种有界阻塞队列:LinkedBlockingQueue。
阅读全文
posted @ 2020-11-08 22:14 程序员小航
阅读(82)
评论(0)
推荐(0)
编辑
AQS 都看完了,Condition 原理可不能少!
摘要: 在介绍 AQS 时,其中有一个内部类叫做 ConditionObject,当时并没有进行介绍,并且在后续阅读源码时,会发现很多地方用到了 Condition ,这时就会很诧异,这个 Condition 到底有什么作用?那今天就通过阅读 Condition 源码,从而弄清楚 Condition 到底是做什么的?当然阅读这篇文章的时候希望你已经阅读了 AQS、ReentrantLock 以及 LockSupport 的相关文章或者有一定的了解(~~当然小伙伴也可以直接跳到文末看总结~~)。
阅读全文
posted @ 2020-11-08 22:10 程序员小航
阅读(240)
评论(0)
推荐(0)
编辑
使用递增计数器的线程同步工具 —— 信号量,它的原理是什么样子的?
摘要: 在 JUC 中线程同步器除了 CountDownLatch 和 CycleBarrier ,还有一个叫做 Semaphore (信号量),同样是基于 AQS 实现的。下面来看看信号量的内部原理。
阅读全文
posted @ 2020-11-08 22:08 程序员小航
阅读(265)
评论(0)
推荐(0)
编辑
你有没有想过为什么交易和退款要拆开不同的表
摘要: 近期做新项目,在设计表结构的时候,突然想起来之前面试的时候遇到的一个问题,那时候也是初出茅庐,对很多东西一知半解(当然现在也是),当时那个小哥哥问我为什么交易和退款要拆成两个表?是基于什么考虑?有什么好处和优点么?
阅读全文
posted @ 2020-11-08 22:06 程序员小航
阅读(238)
评论(0)
推荐(0)
编辑
CountDownLatch 瞬间炸裂!同基于 AQS,凭什么 CyclicBarrier 可以这么秀?
摘要: 看完 CountDownLatch 正准备表示一番,突然看到了一个 CyclicBarrier —— 回环屏障。沃特?回环还屏障?说比 CountDownLatch 要多一个回环,那咱可得瞧一瞧,看一看了!
阅读全文
posted @ 2020-11-08 17:52 程序员小航
阅读(83)
评论(0)
推荐(0)
编辑
上一页
1
2
3
4
5
6
下一页
公告
昵称:
程序员小航
园龄:
4年4个月
粉丝:
18
关注:
2
+加关注
<
2025年3月
>
日
一
二
三
四
五
六
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
搜索
最新随笔
1.follow
2.Halo-Theme-Hao文档:如何设置导航栏?
3.260. 只出现一次的数字 III
4.137. 只出现一次的数字 II
5.136. 只出现一次的数字
6.1488. 避免洪水泛滥
7.2562. 找出数组的串联值
8.2512. 奖励最顶尖的 K 名学生
9.开发人员为什么要写测试用例?
10.付费版 VS Code?脑瓜子嗡嗡的吧!
我的标签
源码
(27)
Spring
(16)
分布式锁
(13)
Redisson
(8)
ZooKeeper
(5)
数据结构与算法
(4)
后端
(4)
MySQL
(3)
IDEA
(3)
设计模式
(3)
更多
积分与排名
积分 - 43032
排名 - 39385
随笔分类
Elasticsearch(5)
Java(2)
JDK 源码笔记(19)
MySQL(4)
Spring(22)
分布式锁(15)
工具册(13)
工作笔记(9)
设计模式(3)
随笔档案
2024年10月(1)
2023年10月(7)
2022年11月(1)
2022年10月(1)
2022年9月(1)
2022年6月(3)
2022年5月(1)
2022年4月(1)
2021年12月(3)
2021年7月(14)
2021年6月(7)
2021年5月(1)
2021年4月(4)
2021年3月(1)
2021年2月(2)
2021年1月(14)
2020年12月(3)
2020年11月(37)
更多
阅读排行榜
1. Spring 源码阅读环境的搭建(2272)
2. 几行代码轻松实现跨系统传递 traceId,再也不用担心对不上日志了!(1875)
3. 打印 Logger 日志时,需不需要再封装一下工具类?(1752)
4. Redisson 分布式锁源码 09:RedLock 红锁的故事(1676)
5. Spring 动态代理时是如何解决循环依赖的?为什么要使用三级缓存?(1391)
评论排行榜
1. 打印 Logger 日志时,需不需要再封装一下工具类?(5)
2. Spring @Transactional 注解是如何执行事务的?(5)
3. ZooKeeper 分布式锁 Curator 源码 02:可重入锁重复加锁和锁释放(4)
4. Redisson 分布式锁源码 09:RedLock 红锁的故事(3)
5. Mac 常用软件推荐 —— Java 开发工程师(2)
推荐排行榜
1. Redisson 分布式锁源码 09:RedLock 红锁的故事(4)
2. 打印 Logger 日志时,需不需要再封装一下工具类?(3)
3. Spring 是如何解决循环依赖的?(3)
4. IDEA 敏捷开发技巧——后缀完成(2)
5. Spring 动态代理时是如何解决循环依赖的?为什么要使用三级缓存?(2)
最新评论
1. Re:打印 Logger 日志时,需不需要再封装一下工具类?
@程序员小航 @小彬 不应该封装。 看自己应用是否有关闭日志的需求,再看看日志中是否有大对象打印的情况,像几小时才一两个请求的应用,完全没必要。但是对于某些场景,比如秒杀活动、购物节等等,还是有需要关...
--小彬
2. Re:打印 Logger 日志时,需不需要再封装一下工具类?
@星耀寂夜 不打印行号,日志内容就可以定位到日志在哪里,行号没有必要吧。并且行号会影响性能。 这个性能的前提是系统有一定的并发。如果不封装的话,就得在代码中加大量的 if 判断。 在没有一定需要并发,...
--程序员小航
3. Re:打印 Logger 日志时,需不需要再封装一下工具类?
封装之后日志显示的行数不都是在这个LogUtil里了吗,不太方便定位代码
--星耀寂夜
4. Re:打印 Logger 日志时,需不需要再封装一下工具类?
@小彬 不应该封装。 看自己应用是否有关闭日志的需求,再看看日志中是否有大对象打印的情况,像几小时才一两个请求的应用,完全没必要。但是对于某些场景,比如秒杀活动、购物节等等,还是有需要关闭日志的。然后...
--程序员小航
5. Re:打印 Logger 日志时,需不需要再封装一下工具类?
不应该封装。
--小彬
点击右上角即可分享
more_horiz
keyboard_arrow_up
dark_mode
palette
选择主题