java复习思路

java基础

  • 1.1 jvm的内存划分
  • 1.2 gc的常用算法 https://blog.csdn.net/zd836614437/article/details/64126826?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2- 1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase
  • 1.3 对象的创建和生命周期
  • 1.4 垃圾收集器有哪些,区别是什么
  • 1.5 jvm的内存模型
  • 1.6 java的类的加载器有几种,什么是双亲委派用来做什么的,如何打破双亲委派
  • 1.7 jvm实例化的顺序;
  • 1.8 java集合类,hashmap的数据结构,list的区别
  • 1.9 java多线程使用,创建多线程有几种方式,有什么区别,线程池分为哪些有什么区别,为什么要使用线程池((一般都是使用ThreadPoolExecutor或者spring的ThreadPoolTaskExecutor));
  • 2.0 java的动态代理
  • 2.1 java中锁的概念,有哪几种锁,有什么区别什么情况下使用;
  • 2.2 jvm中老年代和年轻代有什么区别,什么情况下会进入老年代,进入老年代后会被直接gc掉吗,一个对象创建后就直接进入年轻代了吗?

java框架

  • 2.1 spring的aop和ioc
  • 2.2 spring的事务隔离级别.默认的隔离级别是什么
  • 2.3 spring的作用域
  • 2.4 spring类加载的过程
  • 2.5 spring中动态代理和jdk的动态代理使用的是哪一种,cglib和jdk的动态代理的区别有哪些;
  • 2.6 spring中beanfactory和applicationcontext有什么区别都是用来做什么的;
  • 2.7 spring中bean的生命周期
  • 2.8 spring中如何解决单例对象线程安全的问题;
  • 2.9 spring的自动装配
  • 3.0 spring中用到了哪些设计模式,你常用的设计模式有哪些,为什么要使用到设计模式;
  • 3.1 spring的事务种类和事务的传播机制
  • 3.2 spring中有哪些不同类型的事件
  • 3.3 springmvc的工作流程
  • 3.4 mybatis中常用的一些标签
  • 3.5 mybatis中如何做到接口和xml文件对应的
  • 3.6 #和$的区别
  • 3.7 mybatis如何传递多个参数

redis

  • 3.1 什么是redis,redis常用来做什么
  • 3.2 redis是多线程还是单线程的,redis最高并发为多少;
  • 3.3 redis如何做持久化,有什么不同,缺点和优点?
  • 3.4 redis的集群模式有哪些?有什么特点
  • 3.5 redis的淘汰策略和过期删除是什么样的,默认使用哪一种
  • 3.6 redis的雪崩和缓存击穿是什么场景下出现的有什么样的解决方案
  • 3.7 redis有哪些数据类型

dubbo

  • 4.1 什么是dubbo,dubbo可以用来解决什么问题
  • 4.2 分布式项目和传统项目有什么区别,好处和缺点分别描述一下
  • 4.3 dubbo有哪些通讯协议,默认是使用哪一种的
  • 4.4 dubbo和zookeeper使用时,调用过程说明一下
  • 4.5 dubbo和springcloud的区别是什么
  • 4.6 dubbo内置了哪些服务容器
  • 4.7 dubbo的节点角色有哪些
  • 4.8 说明一下zookeeper的选举机制,和脑裂,什么情况下会发生
  • 4.9 dubbo的常用注解和配置方式
  • 5.0 dubbo使用哪些序列化算法
  • 5.1 dubbo的负载均衡是什么样的原理,有哪几种,默认使用的哪种

数据库

  • 6.1 mysql数据库的存储引擎有哪些和oracle有什么不同
  • 6.2 oracle的自增如何实现
  • 6.3 什么是存储过程,一般用来解决什么问题
  • 6.4 mysql数据库的索引有哪些,oracle的数据库索引有哪些,索引的实现是基于什么的,索引是用来做什么的,为什么要使用索引
  • 6.5 数据库中锁有哪些,mysql的不同存储引擎支持的锁有哪些,分别在什么情况下使用;
  • 6.6 什么是数据库的读写分离 主从复制
  • 6.7 数据库中事务的隔离级别和传播行为,默认使用的是哪种

补充

  • 深拷贝与浅拷贝的区别
  • 为什么要使用克隆
  • mybatis的工作流程
  • hashmap的扩容机制,hashmap存值和取值的过程,死链描述一下,发生hash碰撞如何解决,1.7/1.8区别
  • 集合…
  • spring的设计模式都有哪些
  • springboot如何做到自动装配的
  • mysql数据库的索引类型有哪些有什么区别
  • mysql的数据库引擎有哪些有什么区别
  • zookeeper的临时节点和持久节点
  • redis的分布式锁的实现方式
  • spring中如何使用事务,级别有哪几种,列举
  • arraylist和linkedlist区别,扩容机制
  • 多线程的创建方式
  • 线程的几种状态
  • ThreadLocal简述一下
  • 处理慢sql怎么排查,如果一个sql很慢你会怎么进行分析
  • 线程池初始创建时是否有线程数量?是在什么时候产生的
  • java的锁升级过程,大概说一下
  • CAS是什么?
  • AQS使用场景

2022-2-23补充

  • JVM内存分配
  • GC垃圾回收算法的种类,JVM默认的GC回收算法,GC触发的条件;
  • JVM内存异出问题如何排查OutOfMemory的问题定位,jstack的使用;
  • 生产问题解决:请求接口较慢,在微服务场景下的排查思路和问题定位;
  • synchronized同步锁与Lock可重入锁的区别;
  • SpringCloud与Dubbo的区别:协议区别,服务调用区别,实例化区别,服务治理区别;
  • 聚簇索引和非聚簇索引的区别,什么场景下使用索引,索引的缺点是什么;
  • @EnableAutoConfiguration的作用是什么;
  • Mysql的二次写是什么;

后续还会补充

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值