跳至主要內容
IoC & AOP详解(快速搞懂)

这篇文章会从下面从以下几个问题展开对 IoC & AOP 的解释

  • 什么是 IoC?
  • IoC 解决了什么问题?
  • IoC 和 DI 的区别?
  • 什么是 AOP?
  • AOP 解决了什么问题?
  • AOP 的应用场景有哪些?
  • AOP 为什么叫做切面编程?
  • AOP 实现方式有哪些?

首先声明:IoC & AOP 不是 Spring 提出来的,它们在 Spring 之前其实已经存在了,只不过当时更加偏向于理论。Spring 在技术层次将这两个思想进行了很好的实现。


Guide大约 9 分钟框架Spring
SQL常见面试题总结(2)

题目来源于:牛客题霸 - SQL 进阶挑战

增删改操作

SQL 插入记录的方式汇总:

  • 普通插入(全字段)INSERT INTO table_name VALUES (value1, value2, ...)
  • 普通插入(限定字段)INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...)
  • 多条一次性插入INSERT INTO table_name (column1, column2, ...) VALUES (value1_1, value1_2, ...), (value2_1, value2_2, ...), ...
  • 从另一个表导入INSERT INTO table_name SELECT * FROM table_name2 [WHERE key=value]
  • 带更新的插入REPLACE INTO table_name VALUES (value1, value2, ...)(注意这种原理是检测到主键或唯一性索引键重复就删除原记录后重新插入)

Guide大约 14 分钟数据库数据库基础SQL
SQL常见面试题总结(3)

题目来源于:牛客题霸 - SQL 进阶挑战

较难或者困难的题目可以根据自身实际情况和面试需要来决定是否要跳过。

聚合函数

SQL 类别高难度试卷得分的截断平均值(较难)

描述: 牛客的运营同学想要查看大家在 SQL 类别中高难度试卷的得分情况。


Guide大约 39 分钟数据库数据库基础SQL
SQL常见面试题总结(4)

题目来源于:牛客题霸 - SQL 进阶挑战

较难或者困难的题目可以根据自身实际情况和面试需要来决定是否要跳过。

专用窗口函数

MySQL 8.0 版本引入了窗口函数的支持,下面是 MySQL 中常见的窗口函数及其用法:


Guide大约 22 分钟数据库数据库基础SQL
LinkedHashMap 源码分析

LinkedHashMap 简介

LinkedHashMap 是 Java 提供的一个集合类,它继承自 HashMap,并在 HashMap 基础上维护一条双向链表,使得具备如下特性:

  1. 支持遍历时会按照插入顺序有序进行迭代。
  2. 支持按照元素访问顺序排序,适用于封装 LRU 缓存工具。
  3. 因为内部使用双向链表维护各个节点,所以遍历时的效率和元素个数成正比,相较于和容量成正比的 HashMap 来说,迭代效率会高很多。

Guide大约 19 分钟JavaJava集合
DelayQueue 源码分析

DelayQueue 简介

DelayQueue 是 JUC 包(java.util.concurrent)为我们提供的延迟队列,用于实现延时任务比如订单下单 15 分钟未支付直接取消。它是 BlockingQueue 的一种,底层是一个基于 PriorityQueue 实现的一个无界队列,是线程安全的。关于PriorityQueue可以参考笔者编写的这篇文章:PriorityQueue 源码分析


Guide大约 13 分钟JavaJava集合
2
3
4
5
...
26