摘要: 是什么? Mybatis中的#{}和${}都可以把传入的参数拼到SQL中。 #{}是预编译处理、是占位符, ${}是字符串替换、是拼接符。 核心思想是:确保sql语句中 String型参数 的最外层由单引号包裹;特殊字符普通化。 为什么? Mybatis在处理#{}时,会将sql中的#{}替换为?号 阅读全文
posted @ 2021-08-29 12:08 快乐的海盗 阅读(429) 评论(0) 推荐(0) 编辑
摘要: 是什么? ArrayList是较常用的队列的主要实现类。底层使用object[]数组存储(可以使用方法将其转换为线程安全)。线程不安全,效率高。 下面看看源码: 构造方法: 这是默认容量大小:10 我们常用的无参构造,先把element[]指向本来就有的空数组。不存在任何数据。 add方法: 从注释 阅读全文
posted @ 2021-08-29 11:04 快乐的海盗 阅读(37) 评论(0) 推荐(0) 编辑
摘要: transient transient是短暂的意思。 对于transient 修饰的成员变量,在类的实例对象的序列化处理过程中会被忽略。 因此,transient变量不会贯穿对象的序列化和反序列化,生命周期仅存于调用者的内存中而不会写到磁盘里进行持久化。 序列化 序列化使用ObjectOutputS 阅读全文
posted @ 2021-08-25 18:34 快乐的海盗 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 是什么? Redis和数据库读写一致问题,主要是由于Redis和数据库的操作不同步,也不可能做到同步导致的,那么我们所能做的,也就是尽可能保证Redis中的脏数据能够自己消除,而不是做到毫秒不差,缓存一致问题这在计算机界都是一个难题。 我们要先说清楚,Redis的更新,是直接将原来的值删除。然后再从 阅读全文
posted @ 2021-08-24 22:34 快乐的海盗 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 是什么? hashcode()是Object类中的一个方法。 public native int hashCode(); 可以看到,这是使用native关键字调用底层C++实现的产生随机数的函数。、 有这样一些生成方法: 随机数 基于内存地址生成 固定值:1,用于测试 自增 利用位移生成随机数 这就 阅读全文
posted @ 2021-08-23 22:25 快乐的海盗 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 什么是缓存穿透 对于Redis的机制,我们这里就不再赘述。简单来说,就是查数据(Redis、数据库)-取数据的过程。 一个场景,购物车一个失效的商品,你可以持续的点击商品详情,然后根据商品ID去查,但是Redis不存在,当然数据库也不存在,于是告诉你商品失效。你不相信,又重新点击了一次商品详情,无意 阅读全文
posted @ 2021-08-22 23:58 快乐的海盗 阅读(2248) 评论(1) 推荐(0) 编辑
摘要: 是什么? Interface: 接口是一种行为的抽象。但是现在无论是接口还是抽象类,感觉都已经脱离了本来的这种定义。而主要用来解耦了。例如dao层就是一系列的接口,那么数据库实现就可以随时改动。 抽象类 抽象类是对象的抽象。使用较少。因为子类只能单一继承抽象类,大大限制了灵活性。 为什么? 上面说了 阅读全文
posted @ 2021-08-22 10:35 快乐的海盗 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 是什么 ==和equal都是用于比较相等的,但是对象不同,会产生不同的结果。 ==对比的是栈中的值,基本数据类型是变量值,引用类型是堆中内存对象的地址。 equals:object中默认也是采用==比较,通常会重写。 为什么 ==在C语言就有,很明显,这是一种运算符,和+、-一样,是程序在汇编时来实 阅读全文
posted @ 2021-08-19 17:29 快乐的海盗 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 老生常谈的话题了,但是总是说不明白。 先来丢一段八股文: 进程是资源分配的最小单位,有自己独立的地址空间(address space) 线程是程序执行的最小单位,没有独立的地址空间 一个进程可以包含多个线程,至少一个线程。 因为地址空间分配,导致不同的进程间通信非常困难,但是一个进程中的不同线程通信 阅读全文
posted @ 2021-08-19 17:10 快乐的海盗 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 是什么? 用户态和内核态是机器划分的不同的运行环境。 为什么 要避免程序随意直接访问操作系统内核数据结构和程序,这样会导致程序之间无规则的竞争和信息随意被访问。 怎么用 系统调用:通过操作系统提供的系统调用函数来实现切换。系统调用的本质是中断。 异常事件:当CPU正在执行运行在用户态的程序时,突然= 阅读全文
posted @ 2021-08-19 16:36 快乐的海盗 阅读(116) 评论(0) 推荐(0) 编辑