JAVA工程师必备技能知识图谱

一、思维导图

重点:JVM、多线程编程、数据结构算法、MySQL调优
必备:SSM、SpringBoot、SpringCloud
中间件:redis、zookeeper、RocketMQ、elasticsearch
在这里插入图片描述

JAVA程序员必备技能

计算机基础

数据结构

  • 线性表

    • 定义以及基本操作
    • 顺序表示
    • 链表表示
  • 栈和队列

    • 栈的概念,顺序,链式存储
    • 队列顺序,链式存储
  • 树与二叉树

    • 树的基本概念性质
    • 二叉树概念,存储结构
    • 二叉排序树
    • 平衡二叉树
    • 哈夫曼树
    • 概念性质
    • 存储与基本操作
    • 图的遍历应用,拓扑排序
  • 查找

    • 顺序查找
    • 折半查找
    • 分块查找
    • B树与B+树
    • 散列表,散列查找
    • 串,基础结构,KMP
  • 排序

    • 插入排序

      • 直接插入
      • 折半插入
      • 希尔排序
    • 交换排序

      • 冒泡排序
      • 快速排序
    • 选择排序

      • 简单选择排序
      • 堆排序
    • 归并排序

    • 基数排序

操作系统

  • 进程管理

    • 进程与线程
    • 处理机调度
    • 进程同步
    • 死锁
  • 内存管理

    • 概念

      • 连续分配
      • 非连续分配
    • 虚拟内存

      • 分页管理方式
      • 请求分页
      • 页面置换
      • 页面分配
  • 文件管理

    • 文件系统基础

      • 目录结构、文件共享、文件保护
    • 文件系统的实现

      • 目录、文件
    • 磁盘组织与管理

      • 结构
      • 调度算法
  • 输入输出

    • IO调度
    • 高速缓存与缓冲区

计算机网络

  • 传输层

    • 7/4 TCP/IP模型

JAVA基础

JAVA核心技术

  • 继承

    • 类、超类、子类
    • Object类
  • 接口

    • lambda表达式
    • 内部类
  • 异常/断言/日志

    • 处理异常
    • 使用断言
    • 使用日志
  • 泛型

    • 泛型定义
    • 限制与局限性
    • 通配符
    • 反射与泛型
  • 集合

    • 集合框架
    • 链表、数组列表、散列集、树集、队列
    • 映射
  • 输入/输出

    • 输入输出流
    • 读写二进制
    • 操作文件
  • 网络

    • 连接服务器
    • 实现服务器
    • Http客户端
  • 数据库编程

    • JDBC设计原理
    • sql操作

并发编程

  • java内存模型

    • 重排序
    • 顺序一致性
    • volatile内存语义
    • 锁的内存语义
    • final域的内存语义
  • 线程

    • 构造线程
    • 线程通信
    • 线程同步
  • JAVA中的锁

    • Lock接口
    • 队列同步器
    • 重入锁
    • 读写锁
    • LockSupport
    • Condition接口
  • 并发容器与框架

    • ConcurrentHashMap
    • ConcurrentLinkedQueue
    • 阻塞队列
    • Fork/Join框架
  • 13个原子操作操作类

  • 并发工具类

    • CountDownLatch
    • CyclicBarrier
    • Semaphore
    • Exchanger
  • Executor

    • Executor框架结构与成员
    • ThreadPoolExecutor
    • ScheduledThreadPoolExecutor
    • FutureTask

JVM虚拟机(HotSpot)

  • java内存区域与内存溢出异常

    • 运行时数据区域

      • 程序计数器
      • 虚拟机栈
      • 本地方法栈
      • 方法区
      • 运行时常量池
      • 直接内存(不属于运行时数据区)
    • HotSpot对象的创建、内存布局、访问定位

    • 内存溢出

      • 堆溢出
      • 栈溢出
      • 方法区和运行时常量池溢出
      • 直接内存溢出
  • 垃圾收集器与内存回收

    • 对象何时回收

      • 引用计数算法
      • 可达性分算法
    • 垃圾收集算法

      • 标记-清除算法
      • 复制算法
      • 标记整理算法
      • 分代收集算法
    • 垃圾收集器

      • Serial收集器
      • ParNew收集器
      • Parallel Scavenge收集器
      • Serial Old收集器
      • Parallel Old收集器
      • CMS收集器
      • G1收集器
    • 内存分配与回收策略

      • 对象优先在Eden分配
      • 大对象直接进入老年代
      • 动态对象年龄判断
    • 虚拟机监控与故障处理

      • jps
      • jstat
      • jinfo
      • jmap
      • jhat
      • jstack
      • HSDIS
      • JConsole
      • VisualVM
    • 类文件结构

      • Class类文件结构
      • 字节码指令
    • 类加载机制

      • 类加载过程

        • 加载、验证、准备、解析、初始化
      • 类加载器

数据库

MySQL

  • 存储引擎

    • MyIsam
    • InnoDB
    • Memory
  • 数据类型

    • 字符、日期…
  • 索引设计

    • 索引原理
    • SQL命中
    • 覆盖索引、聚簇索引
  • 服务参数

  • 内置表

    • 执行计划
    • 慢查询日志
  • 锁机制

  • 读写分离

  • 分区分表

Oracle

中间件

缓存

  • Redis

    • 五大数据类型
    • RDB、AOF
    • Redis集群搭建
    • 哨兵机制
    • 缓存穿透、雪崩、jedis、淘汰策略

消息队列

  • ActiveMQ

    • 安装
    • 消息发送
    • 消息存储
    • 消息消费
    • 集群、主从同步
  • RabbitMQ

  • RocketMQ

  • Kafaka

搜索引擎

  • lucene

  • solr

  • elasticsearch

    • 核心概念
    • 环境搭建
    • 查询api,javaapi
    • ELK搭建

文件存储

  • FastDfs

分布式任务调度

  • zookeeper

开源框架

Spring

  • IOC/AOP
  • bean的加载、相关源码

SpringBoot

SpringCloud

  • 配置中心

    • Nacos
    • consul
    • zookeeper
  • 注册中心

    • nacos
    • consul
    • zookeeper
    • eureka
  • 熔断

    • sentinel
    • Hystrix
  • 服务调用

    • Feign
    • OpenFeign
    • Dubbo
  • 服务路由

    • zuul
    • gateway
    • dubbo+servlet
  • 分布式消息

    • RocketMQ
    • kafka
  • 消息总线

    • bus
  • 负载均衡

    • LoadBalancer
    • DubboLB
    • Ribbon

Mybatis

算法

贪心算法

动态回话

回朔算法

分治

分支限界

Linux

常用命令

脚本编程

Hadoop生态

Hadoop

MapReduce

HIVE

Storm

DevOps

Tomcat

  • 参数配置,调优

Nginx

  • 参数配置,集群,调优

Netty

  • 原理

Docker

K8s

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一点博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值