[logseq-plugin-git:commit] 2024-07-01T02:39:49.300Z

This commit is contained in:
lostecho
2024-07-01 10:39:49 +08:00
parent e1313245c3
commit c91bf3e039

View File

@@ -1,20 +1,26 @@
- finally #card #java
id:: 6681f589-6a14-444d-a531-757106bbf639
- java关键字之一用于构建try-catch-finally语句块
- 用于释放资源,关闭连接等
- finally中的内容会在try和catch结束前执行
- final #card #java
id:: 6682075e-9092-45f4-84e3-f72b327cc464
- java修饰符关键字
- 可以修饰变量,类,方法,修饰后的变量不可以被修改,方法无法重写,类无法继承
- finalize() #card #java
id:: 668207bd-e4ba-4c6a-a834-9cfd0578a36d
- Object中的一个方法
- 当对象要被回收时会被调用,执行一些资源清理的操作
- 调用的时间是不确定的
- 手写单例模式 #card #java
id:: 66820808-c5d5-4c44-a5f3-f6273725469d
-
- 用了redis哪些数据结构 #card #java
id:: 66820850-48cc-4bde-8ec6-8ca8ce5d42e0
- string存验证码缓存常用的一些数据
- hash存储一些购物车内容
- redis持久化机制 #card #java
id:: 668208e5-41ef-4991-afd2-d5df1d2756c3
- redis持久化分为RDB和AOF
- RDB
- 存储的是某一时刻内存的镜像副本
@@ -25,33 +31,41 @@
- 存储的不是数据,而是操作命令
- 存在重写的过程,实时性较好,恢复的速度较慢
- redis事务 #card #java
id:: 668208f6-0350-45ac-bb04-85535ee0896c
- 原子性,可以让一组命令同时按照顺序执行
- 没有回滚以及隔离,出错后出错的命令不会执行,其他命令都会执行
- 需要配合lua脚本来保证执行的时候没有其他命令或lua脚本插入执行
- redis单线程问题哪个版本开始有多线程 #card #java
id:: 668208f9-c6bd-40fb-a7a0-be5ce340ae11
- 使用单线程可以避免线程间上下文切换带来的额外开销
- 6.0引入来IO多线程但是主线程还是单线程
- java8跟7有什么变化 #card #java
id:: 66820c02-dee3-452d-b1b5-aaab582973ba
- completeablefuture
- locadatetime
- stream流
- optional类
- concurrentHashMap
- 红黑树 #card #java
id:: 66820c48-c30b-464c-8495-87b6b1d6a796
- 一种自平衡的二叉树
- 可以加快查找元素的速度,但是插入的速度由于需要自平衡会变慢
- 如何让线程进入等待,有哪些方法 #card #java
id:: 66820ddc-9987-47fb-a46a-59d5a65849ea
- 使用wait和sleep方法
- wait和sleep的区别 #card #java
id:: 66820eb0-ea1d-47bd-96d5-a9684c00d5da
- wait会释放锁放入wait等待池中等待notify和notifyAll唤醒唤醒后再重新竞争锁
- sleep不会释放锁睡眠期间不会占用CPU资源等待时间到达后继续执行
- 常用的线程池 #card #java
id:: 66820f2e-58df-4ba4-b3a2-39d34ddb3e9d
- SingleThreadPool
- FixedThreadPool
- ScheduleThreadPool
- CachedThreadPool
- ForkJoinPool
- JVM组成 #card #java
id:: 66820f8d-4a88-4fe1-bb77-fb264f076bea
- 程序计数器
- 虚拟机栈
- 本地方法栈
@@ -59,10 +73,12 @@
- 元空间
- 直接内存
- 栈溢出 #card #java
id:: 66820c5d-2657-4a7a-a5c6-57195aafd0f8
- 递归
- 方法深度超过栈容量
- 对象过多,栈空间不足
- mysql 常用数据库引擎及区别 #card #java
id:: 66821082-95b1-4235-b0e1-af72a37bbd91
- InnoDB
- 支持事务,可靠性较好
- 性能较好,可以提供表锁和行锁
@@ -78,21 +94,30 @@
- 非聚簇索引存储的是主键ID查询的时候可能需要回表如果索引覆盖就不需要回表
- 复合索引需要符合最左匹配的原则,否则会导致索引失效
- SQL执行顺序 #card #java
id:: 66821224-5909-4718-b0f5-9a0b64fa481c
- select ab from A B left join where group by having order by limit
- union和union all的区别 #card #java
id:: 66821254-3fb9-4a9e-80eb-1990331f3cfd
- union不会去重复union all会去重union性能要更好
- spring 解决循环依赖问题 #card #java
id:: 66821307-e75e-4283-9fa6-a6b431c4c83d
- 使用三级缓存架构,解决循环依赖
- 第一层存放EarlySingletonFactoryObject
- 第二层存放EarlySingletonObject
- Spring Bean的原理 #card #java
id:: 66821391-077f-4f2b-bb65-e5e35ff03f7c
- Spring Boot的注解 #card #java
id:: 668213a0-1a80-4678-8619-9cf5e57e1d98
- Bean
- ControllerRestController
- Service
- Compoment
- Repository
- Spring Boot自动装配原理 #card #java
id:: 668213d3-a4d1-451a-98b6-6fbb9972f2bb
- Spring Cloud组成 #card #java
id:: 668213ea-48fa-4892-9db5-a6bb3bd3d84d
- 负载均衡如何配置 #card #java
- 网关如何转发请求 #card #java
id:: 668213f7-38a9-4690-b10d-8e8a2a67162f
- 网关如何转发请求 #card #java
id:: 668213fe-e07d-4e5e-9f57-3c863eda3d40