面试题:为什么阿里巴巴的 Java 手册不推荐使用存储过程?
阿里巴巴的《Java开发手册》中不推荐使用存储过程,主要是基于以下几个方面的考量: 可移植性差:存储过程依赖于特定的数据库管理系统(DBMS),这意味着如果你的应用程序需要更换数据库系统,...
面试题:MySQL 中 TEXT 类型最大可以存储多长的文本?
在 MySQL 中,TEXT 类型用于存储大文本数据,其最大存储长度取决于具体的子类型。以下是详细的分类和存储容量: 1. TEXT 类型的分类与存储容量 类型最大字节长度典型场景TINYTEXT255 字节...
面试题:MySQL 中的回表是什么?
MySQL 中的回表是什么? 核心概念 回表 是 MySQL 中一种与索引查询相关的性能现象,通常发生在使用 二级索引(非聚簇索引) 进行查询时。 定义:当通过二级索引查询数据时,由于...
面试题:在 MySQL 中,你使用过哪些函数?
作为开发者,我在 MySQL 中经常使用以下各类函数: 一、字符串函数 基础处理函数: CONCAT(str1, str2,...) - 字符串连接 SUBSTRING(str, pos, len) - 提取子串 TRIM([BOTH|LEADING|TRAILING]...
面试题:Redis 中如何保证缓存与数据库的数据一致性?
在使用 Redis 作为缓存层时,确保缓存与数据库之间数据的一致性是一个挑战。通常来说,完全避免不一致几乎是不可能的,但可以通过一些策略和技术来最小化这种不一致性。以下是几种常见的处理方...
面试题:Java 中 String、StringBuffer 和 StringBuilder 的区别是什么?
在 Java 中,String、StringBuffer 和 StringBuilder 都是用来处理字符串的类,但它们之间有一些关键的区别,主要体现在可变性、线程安全和性能方面。 String 不可变性:String 类的对象一旦创...
面试题:MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
在 MySQL 中,COUNT(*)、COUNT(1) 和 COUNT(字段名) 都是用于计算行数的聚合函数,但它们之间有一些细微的区别: 1. COUNT(*) 作用:计算表中所有行的数量,包括含有 NULL 值的行。 性能:MySQL...
面试题:什么是 Java 的 PLAB?
在Java虚拟机(JVM)的垃圾收集(Garbage Collection, GC)过程中,PLAB指的是Promotion Local Allocation Buffer(晋升本地分配缓冲区)。PLAB主要用于并行垃圾收集器中,特别是在处理年轻代到...
面试题:️说说 ES6 扩展运算符的作用及使用场景?
ES6(ECMAScript 2015)引入的扩展运算符(Spread Operator),使用三个点 ... 表示,是一种非常强大且常用的语法特性。它的核心作用是将一个可迭代对象(如数组、字符串、类数组对象...
面试题: Synchronized 能不能禁止指令重排序?
在 Java 中,Synchronized 关键字主要用于确保线程安全,它通过提供可见性和原子性来保证共享资源的正确访问。 关于 Synchronized 是否能禁止指令重排序,我们需要从 Java 内存模型(JMM, Java ...









