摘要: 问题起因 在做一个需求的时候,发现原来的代码逻辑都是基于模板+泛型的设计模式,模板用于规整逻辑处理流程,泛型用来转换参数和选取实现类。听上去是不是很nice! 但是在方法调用的时候却突然爆出一个NPE,直接给人整蒙了!不过懵归懵,该排查的还是需要排查的,下面我使用一个例子来模拟分析我这次的排查的过程 阅读全文
posted @ 2022-04-20 10:38 邱志强 阅读(845) 评论(3) 推荐(1) 编辑
摘要: 前言 昨天同事跟我聊到一个问题:InnoDB里面间隙锁锁住的数据可以update么?我们经常都说间隙锁是InnoDB在RR隔离级别下防止幻读的一种处理手段。它可以防止数据在间隙范围中insert数据,但是对于update?很多资料都没有明显说明,今天咱们就通过几个实验来揭开间隙锁的神秘面纱。 mys 阅读全文
posted @ 2022-03-25 18:02 邱志强 阅读(427) 评论(7) 推荐(0) 编辑
摘要: 前言 我们在上一篇博客聊了Mysql的整体架构分布,连接层、核心层、存储引擎层和文件系统层,其中存储引擎层作为Mysql Server中最重要的一部分,为我们sql交互提供了数据基础支持。存储引擎和文件系统执行IO交互,读取同一份原始数据(存储引擎不同,可能文件也不一样,但是都是一份数据),然后依据 阅读全文
posted @ 2022-03-24 16:38 邱志强 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 前言 我相信每一个程序员都避免不了和数据库打交道,其中Mysql以其轻量、开源成为当下最流行的关系型数据库。Mysql5.0以前以MyISAM作为默认存储引擎,在5.5版本以后,以InnoDB作为默认存储引擎,相比MyISAM,InnoDB完整的支持ACID事务特性,同时支持行级锁,支持事务这一特性 阅读全文
posted @ 2022-03-22 18:27 邱志强 阅读(832) 评论(0) 推荐(0) 编辑
摘要: 前言 多sheet导出也是我们日常工作经常会碰到的一个需求场景,它既可以是复杂内容的sheet排列展示,也可以是几个小部分的内容并列展示。 细心的朋友似乎已经通过上一篇博文发现了EasyExcel写数据的套路:打开sheet → 执行写入。不要惊讶,确实就这两步! 打开sheet 先来看看我们昨天是 阅读全文
posted @ 2022-03-21 16:33 邱志强 阅读(4448) 评论(0) 推荐(0) 编辑
摘要: 前言 本文使用的EasyExcel Alibaba和EasyPoi Apache技术栈分析 EasyExcel Dependency EasyPoi Dependency 1、需求一:表格化需求导入导出(难度星级:☆) 导入导出模板 实体对象 这里我们用到了一个注解com.alibaba.excel 阅读全文
posted @ 2022-03-20 17:16 邱志强 阅读(967) 评论(0) 推荐(0) 编辑
摘要: 众所周知,jdk8提供的Lambda表达式能帮我极大的精简代码,但是就在我们在实际使用过程中会有一些重复性的代码,比如对于stream来源的空判断处理,今天我就给大家整理了一些工具类,帮助大家更好的使用流 public final class EnhanceStream { public stati 阅读全文
posted @ 2022-03-19 15:01 邱志强 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 在一开始学习 Spring 的时候,我们就接触 IoC 了,作为 Spring 第一个最核心的概念,我们在解读它源码之前势必需要对其有深入的认识,本篇为【死磕 Spring】系列博客的第一篇博文,主要介绍 IoC 基本概念和各个组件。 IoC 理论 IoC 全称为 Inversion of Cont 阅读全文
posted @ 2022-03-18 16:50 邱志强 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 背景 * Java1.5引入,随之一起引入的还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue。 适用场景 CountDownLatch可以等待多个线程执行完逻辑再执行后续代码。 执行结果如下所示: awit方法就像是一堵只有所有线程的 阅读全文
posted @ 2020-11-17 20:46 邱志强 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 我们讲集合,就是Collection顶级接口下包括的一些常用集合数据结构,大致分为三类:List(可重复元素集)、Map(KV映射集)、Set(不可重复集)、Queue(队列) 总结: 1、ArrayList:底层数组,支持O(1)的时间复杂度根据下标的随机访问,在指定位置插入数据会触发底层数组拷贝 阅读全文
posted @ 2020-11-06 10:28 邱志强 阅读(120) 评论(0) 推荐(0) 编辑