Java SPI 机制详解
在面向对象的设计原则中,一般推荐模块之间基于接口编程,通常情况下调用方模块是不会感知到被调用方模块的内部具体实现。一旦代码里面涉及具体实现类,就违反了开闭原则。如果需要替换一种实现...
Java 语法糖详解
语法糖是大厂 Java 面试常问的一个知识点。本文从 Java 编译原理角度,深入字节码及 class 文件,抽丝剥茧,了解 Java 中的语法糖原理及用法,帮助大家在学会如何使用 Java 语法糖的同时,了解...
MySQL事务隔离级别详解
事务隔离级别总结SQL 标准定义了四个隔离级别:READ-UNCOMMITTED(读取未提交) :最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。READ-COMMITTED(读取已提交) ...
MySQL执行计划分析
原文地址:https://mp.weixin.qq.com/s/d5OowNLtXBGEAbT31sSH4g优化 SQL 的第一步应该是读懂 SQL 的执行计划。本篇文章,我们一起来学习下 MySQL EXPLAIN 执行计划相关知识。什么是执行计划?执...
如何基于Redis实现延时任务
基于 Redis 实现延时任务的功能无非就下面两种方案:Redis 过期事件监听Redisson 内置的延时队列面试的时候,你可以先说自己考虑了这两种方案,但最后发现 Redis 过期事件监听这种方案存在很多...
SQL常见面试题总结(1)
检索数据SELECT 用于从数据库中查询数据。从 Customers 表中检索所有的 ID现有表 Customers 如下:cust_idABC编写 SQL 语句,从 Customers 表中检索所有的 cust_id。答案:SELECT cust_id FRO...
MQ消息队列八股系列(2)
11、如何解决消息队列的延时以及过期失效问题? 整理后的内容如下: 解决消息队列的延时问题 1.1 增加消费者实例 方法:增加消费者实例可以提高消息处理的并发度,从而减少消息的等待时间。 1.2...
C语言实现各种排序
C语言实现各种排序1、冒泡排序冒大泡(将大的数往后放)void bubble_sort(int *p,int len){ for(int i=0;i<len-1;i++){ for(int j=0;j<len-1-i;j++){ i...
MySQL常见面试题总结
MySQL 基础什么是关系型数据库?顾名思义,关系型数据库(RDB,Relational Database)就是一种建立在关系模型的基础上的数据库。关系模型表明了数据库中所存储的数据之间的联系(一对一、一对多...








