Java知识体系最强总结(2020版)
大家好,我是CSDN的博主ThinkWon,“2020博客之星年度总评选'开始啦,希望大家帮我投票,每天都可以投多票哦,点击下方链接,然后点击'最大”,再点击'投TA一票'就可以啦!
投票链接:https://bss.csdn.net/m/topic/blog_star2020/detail?username=thinkwon
在技术的世界里,ThinkWon将一路与你相伴!创作出更多更高质量的文章!2020为努力奋斗的你点赞👍,️新的一年,祝各位大牛牛气冲天,牛年大吉!😊😊
更新于2020-08-18 10:38:00
本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的习惯,整理了一些有关Java的知识体系,这不是最终版,会不定期的更新。也算是记录自己在从事编程工作的成长足迹,通过博客可以促进博主与阅读者的共同进步,结交更多志同道合的朋友。特此分享给大家,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。
整理的Java知识体系主要包括基础知识,工具,并发编程,数据结构与算法,数据库,JVM,架构设计,应用框架,中间件,微服务架构,分布式架构,程序员的一些思考,团队与项目管理,运维,权限,推荐书籍,云计算,区块链等,包含了作为一个Java工程师在开发工作学习中需要用到或者可能用到的绝大部分知识。千里之行始于足下,希望大家根据自己的薄弱点,查缺补漏,根据自己感兴趣的方面多学习,学的精通一点,从现在开始行动起来。路漫漫其修远兮,吾将上下而求索,不管编程开发的路有多么难走,多么艰辛,我们都将百折不挠,不遗余力地去追求和探索。
文章目录
- Java面试总结
- 基础知识
- Java概述
- 基础语法
- 面向对象
- 集合框架
- IO流
- 网络编程
- 常用API
- 常用工具类库
- 单元测试
- 异常
- 日志
- 工具
- IDEA
- Eclipse & STS
- Maven
- Docker
- Git
- GitLab
- GitKraken
- Navicat
- 并发编程
- 基础知识
- 并发理论
- 并发关键字
- Lock体系
- 并发容器
- 线程池
- 原子操作类
- 并发工具
- 并发实践
- 数据结构与算法
- 数据结构
- 算法
- 排序算法
- LeetCode
- 数据库
- Oracle
- MySQL
- 数据库基础知识
- 数据类型
- 引擎
- 索引
- 三大范式
- 常用SQL语句
- 存储过程与函数
- 视图
- MySQL优化
- 事务
- 数据备份与还原
- Redis
- Java虚拟机
- 深入理解Java虚拟机
- 架构设计
- 设计模式
- 创建型模式
- 结构型模式
- 行为型模式
- J2EE模式
- 实践应用
- 应用框架
- Spring
- 《Spring实战》读书笔记
- Spring MVC
- MyBatis
- Hibernate
- Shiro
- Spring Security
- Netty
- 搜索引擎
- Lucene/Solr
- Elasticsearch
- ELK
- 中间件
- 消息中间件
- RabbitMQ
- RocketMQ
- ActiveMQ
- Kafka
- 远程过程调用中间件
- Dubbo
- 数据访问中间件
- Web应用服务器
- Tomcat
- Nginx
- 缓存
- 其他
- Zookeeper
- 微服务与分布式
- Spring Boot
- Spring Cloud
- 服务注册发现
- 服务配置
- 负载均衡
- 服务调用
- 服务限流
- 熔断降级
- 网关路由
- 服务权限
- 链路追踪
- 分布式事务
- 分布式缓存
- 分布式会话
- 日志收集
- 服务监控
- 消息驱动
- 数据处理流
- 自动化测试与部署
- 第三方支持
- 分布式协调服务Zookeeper
- 程序员的一些思考
- 团队与项目管理
- 需求调研
- 项目管理
- 代码管理
- 文档管理
- 测试
- 运维
- 操作系统
- 推荐书籍
- 云计算
- 搜索引擎
- 权限管理
- 区块链
Java面试总结
Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java工程师在面试中需要用到或者可能用到的绝大部分知识。欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。文章持续更新中…
基础知识
Java概述
序号 | 内容 | 链接地址 |
---|---|---|
1 | Java简介 | https://thinkwon.blog.csdn.net/article/details/94353575 |
2 | Java发展历程 | https://thinkwon.blog.csdn.net/article/details/94353653 |
3 | Java语言特点 | https://thinkwon.blog.csdn.net/article/details/94354013 |
4 | JDK安装与环境变量配置 | https://thinkwon.blog.csdn.net/article/details/94353907 |
5 | JVM、JRE和JDK的关系 | https://thinkwon.blog.csdn.net/article/details/101369973 |
基础语法
大部分已完成
待整理:
Java开发必会的反编译知识(附支持对Lambda进行反编译的工具)
一文读懂什么是Java中的自动拆装箱
Java的枚举类型用法介绍
类、枚举、接口、数组、可变参数
泛型、序列化
面向对象
待整理:
抽象
继承、封装、多态
接口、抽象类、内部类
序号 | 内容 | 链接地址 |
---|---|---|
1 | 什么是面向对象 | https://thinkwon.blog.csdn.net/article/details/100667386 |
集合框架
迭代器、增强for、泛型
序号 | 内容 | 链接地址 |
---|---|---|
1 | Java集合框架总结 | https://thinkwon.blog.csdn.net/article/details/98844796 |
2 | ArrayList(JDK1.8)源码解析 | https://thinkwon.blog.csdn.net/article/details/98845119 |
3 | HashMap(JDK1.8)源码解析 | https://thinkwon.blog.csdn.net/article/details/98845487 |
4 | LinkedHashMap(JDK1.8)源码解析 | https://thinkwon.blog.csdn.net/article/details/102574293 |
5 | LinkedList(JDK1.8)源码解析 | https://thinkwon.blog.csdn.net/article/details/102573923 |
6 | TreeMap(JDK1.8)源码解析 | https://thinkwon.blog.csdn.net/article/details/102571883 |
IO流
待整理:
File、递归
字节流、字节缓冲流
编码表、编码方式、转换流、序列化、序列化流、打印流、commons-io
网络编程
网络概述、网络模型
Socket原理机制
UDP
TCP/IP
协议、OSI 七层协议、HTTP、HTTP2.0、HTTPS
网络安全
XSS、CSRF、SQL注入、Hash Dos、脚本注入、漏洞扫描工具、验证码
DDoS防范、用户隐私信息保护、序列化漏洞
加密解密、对称加密、哈希算法、非对称加密
服务安全、数据安全、数据备份
网络隔离、登录跳板机、非外网分离
认证、授权
常用API
Date、DateFormat、Calendar
String、StringBuffer、StringBuilder、正则表达式
Number、Radom、Math、System、包装类
Arrays、Collections
常用工具类库
待整理:OkHttp、commons-lang3
序号 | 内容 | 链接地址 |
---|---|---|
1 | HttpClient工具类 | https://thinkwon.blog.csdn.net/article/details/101391489 |
2 | WGS84地球坐标系,GCJ02火星坐标系,BD09百度坐标系简介与转换 | https://thinkwon.blog.csdn.net/article/details/101392187 |
3 | Lombok简介、使用、工作原理、优缺点 | https://thinkwon.blog.csdn.net/article/details/101392808 |
4 | Java几种常用JSON库性能比较 | https://thinkwon.blog.csdn.net/article/details/94354358 |
单元测试
JUnit
异常
序号 | 内容 | 链接地址 |
---|---|---|
1 | Java异常总结 | https://thinkwon.blog.csdn.net/article/details/94346911 |
2 | Java异常架构与异常关键字 | https://thinkwon.blog.csdn.net/article/details/101676779 |
3 | Java异常处理流程 | https://thinkwon.blog.csdn.net/article/details/101677638 |
4 | 如何选择异常类型 | https://thinkwon.blog.csdn.net/article/details/94346911 |
5 | Java异常常见面试题 | https://thinkwon.blog.csdn.net/article/details/101681073 |
6 | Java异常处理最佳实践 | https://thinkwon.blog.csdn.net/article/details/94347002 |
日志
序号 | 内容 | 链接地址 |
---|---|---|
1 | 常用日志框架Log4j,Logback,Log4j2性能比较与日志门面SLF4J简介 | https://thinkwon.blog.csdn.net/article/details/101621135 |
2 | 日志作用 | https://thinkwon.blog.csdn.net/article/details/101619725 |
3 | Apache Log4j2详解 | https://thinkwon.blog.csdn.net/article/details/95043111 |
4 | Log4j2同步日志,混合日志和异步日志配置详解 | https://thinkwon.blog.csdn.net/article/details/101625124 |
5 | Log4j2配置文件详解 | https://thinkwon.blog.csdn.net/article/details/101629302 |
6 | Log4j2的Appenders配置详解 | https://thinkwon.blog.csdn.net/article/details/101625820 |
7 | Log4j2的Filters配置详解 | https://thinkwon.blog.csdn.net/article/details/101627162 |
8 | Log4j2的Policy触发策略与Strategy滚动策略配置详解 | https://thinkwon.blog.csdn.net/article/details/101628222 |
9 | Log4j2的Loggers配置详解 | https://thinkwon.blog.csdn.net/article/details/101628736 |
工具
IDEA
序号 | 内容 | 链接地址 |
---|---|---|
1 | IDEA常用配置和常用插件 | https://thinkwon.blog.csdn.net/article/details/101020481 |
2 | IDEA中Maven依赖下载失败解决方案 | https://thinkwon.blog.csdn.net/article/details/101312918 |
3 | 在IDEA中使用Linux命令 | https://thinkwon.blog.csdn.net/article/details/106320360 |
Eclipse & STS
序号 | 内容 | 链接地址 |
---|---|---|
1 | Eclipse & Spring Tool Suite常用配置 | https://thinkwon.blog.csdn.net/article/details/101025543 |
Maven
序号 | 内容 | 链接地址 |
---|---|---|
1 | Maven简介 | https://thinkwon.blog.csdn.net/article/details/94346090 |
2 | Maven安装与配置 | https://thinkwon.blog.csdn.net/article/details/94346569 |
3 | Maven依赖冲突 | https://thinkwon.blog.csdn.net/article/details/101483020 |
4 | 手动安装Maven依赖 | https://thinkwon.blog.csdn.net/article/details/101483478 |
5 | Maven部署jar包到远程仓库 | https://thinkwon.blog.csdn.net/article/details/101483769 |
6 | Maven私服Nexus安装与使用 | https://thinkwon.blog.csdn.net/article/details/94346681 |
Docker
序号 | 内容 | 链接地址 |
---|---|---|
1 | 使用Docker安装GitLab | https://thinkwon.blog.csdn.net/article/details/95042797 |
2 | 虚拟机和容器有什么不同 | https://thinkwon.blog.csdn.net/article/details/107476886 |
3 | Docker 从入门到实践系列一 - 什么是Docker | https://thinkwon.blog.csdn.net/article/details/107477065 |
Git
序号 | 内容 | 链接地址 |
---|---|---|
1 | Git简介 | https://thinkwon.blog.csdn.net/article/details/94346816 |
2 | 版本控制 | https://thinkwon.blog.csdn.net/article/details/101449228 |
3 | Git忽略文件.gitignore详解 | https://thinkwon.blog.csdn.net/article/details/101447866 |
4 | Git与SVN的区别 | https://thinkwon.blog.csdn.net/article/details/101449611 |
5 | 常用Git命令 | https://thinkwon.blog.csdn.net/article/details/101450420 |
6 | Git,GitHub与GitLab的区别 | https://thinkwon.blog.csdn.net/article/details/101470086 |
GitLab
GitKraken
Navicat
并发编程
基础知识
序号 | 内容 | 链接地址 |
---|---|---|
1 | 并发编程的优缺点 | https://thinkwon.blog.csdn.net/article/details/102020811 |
2 | 线程的状态和基本操作 | https://thinkwon.blog.csdn.net/article/details/102027115 |
3 | 进程和线程的区别(超详细) | https://thinkwon.blog.csdn.net/article/details/102021274 |
4 | 创建线程的四种方式 | https://thinkwon.blog.csdn.net/article/details/102021143 |
并发理论
序号 | 内容 | 链接地址 |
---|---|---|
1 | Java内存模型 | https://thinkwon.blog.csdn.net/article/details/102073578 |
2 | 重排序与数据依赖性 | https://thinkwon.blog.csdn.net/article/details/102073858 |
3 | as-if-serial规则和happens-before规则的区别 | https://thinkwon.blog.csdn.net/article/details/102074107 |
4 | Java并发理论总结 | https://thinkwon.blog.csdn.net/article/details/102074440 |
并发关键字
序号 | 内容 | 链接地址 |
---|---|---|
1 | Java并发关键字-synchronized | https://thinkwon.blog.csdn.net/article/details/102243189 |
2 | Java并发关键字-volatile | https://thinkwon.blog.csdn.net/article/details/102243670 |
3 | Java并发关键字-final | https://thinkwon.blog.csdn.net/article/details/102244477 |
Lock体系
待整理:
公平锁 & 非公平锁
乐观锁 & 悲观锁
可重入锁 & 不可重入锁
互斥锁 & 共享锁
死锁
序号 | 内容 | 链接地址 |
---|---|---|
1 | Lock简介与初识AQS | https://thinkwon.blog.csdn.net/article/details/102468837 |
2 | AQS(AbstractQueuedSynchronizer)详解与源码分析 | https://thinkwon.blog.csdn.net/article/details/102469112 |
3 | ReentrantLock(重入锁)实现原理与公平锁非公平锁区别 | https://thinkwon.blog.csdn.net/article/details/102469388 |
4 | 读写锁ReentrantReadWriteLock源码分析 | https://thinkwon.blog.csdn.net/article/details/102469598 |
5 | Condition源码分析与等待通知机制 | https://thinkwon.blog.csdn.net/article/details/102469889 |
6 | LockSupport详解 | https://thinkwon.blog.csdn.net/article/details/102469993 |
并发容器
序号 | 内容 | 链接地址 |
---|---|---|
1 | 并发容器之ConcurrentHashMap详解(JDK1.8版本)与源码分析 | https://thinkwon.blog.csdn.net/article/details/102506447 |
2 | 并发容器之ConcurrentLinkedQueue详解与源码分析 | https://thinkwon.blog.csdn.net/article/details/102508089 |
3 | 并发容器之CopyOnWriteArrayList详解 | https://thinkwon.blog.csdn.net/article/details/102508258 |
4 | 并发容器之ThreadLocal详解 | https://thinkwon.blog.csdn.net/article/details/102508381 |
5 | ThreadLocal内存泄漏分析与解决方案 | https://thinkwon.blog.csdn.net/article/details/102508721 |
6 | 并发容器之BlockingQueue详解 | https://thinkwon.blog.csdn.net/article/details/102508901 |
7 | 并发容器之ArrayBlockingQueue与LinkedBlockingQueue详解 | https://thinkwon.blog.csdn.net/article/details/102508971 |
线程池
序号 | 内容 | 链接地址 |
---|---|---|
1 | 线程池ThreadPoolExecutor详解 | https://thinkwon.blog.csdn.net/article/details/102541900 |
2 | Executors类创建四种常见线程池 | https://thinkwon.blog.csdn.net/article/details/102541990 |
3 | 线程池之ScheduledThreadPoolExecutor详解 | https://thinkwon.blog.csdn.net/article/details/102542299 |
4 | FutureTask详解 | https://thinkwon.blog.csdn.net/article/details/102542404 |
原子操作类
序号 | 内容 | 链接地址 |
---|---|---|
1 | 原子操作类总结 | https://thinkwon.blog.csdn.net/article/details/102556910 |
并发工具
序号 | 内容 | 链接地址 |
---|---|---|
1 | 并发工具之CountDownLatch与CyclicBarrier | https://thinkwon.blog.csdn.net/article/details/102556958 |
2 | 并发工具之Semaphore与Exchanger | https://thinkwon.blog.csdn.net/article/details/102557034 |
并发实践
序号 | 内容 | 链接地址 |
---|---|---|
1 | 实现生产者消费者的三种方式 | https://thinkwon.blog.csdn.net/article/details/102557126 |
数据结构与算法
数据结构
序号 | 内容 | 链接地址 |
---|---|---|
1 | 红黑树详细分析(图文详解),看了都说好 | https://thinkwon.blog.csdn.net/article/details/102571535 |
1、数组2、栈3、队列4、链表5、树二叉树 完全二叉树 平衡二叉树 二叉查找树(BST) 红黑树 B,B+,B*树 LSM 树字段是不是数据结构
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
算法
语言只是编程工具,算法才是编程之魂!
1、排序算法:快速排序、归并排序、计数排序2、搜索算法:回溯、递归、剪枝3、图论:最短路径、最小生成树、网络流建模4、动态规划:背包问题、最长子序列、计数问题5、基础技巧:分治、倍增、二分法、贪心算法宽度优先搜索深度优先搜索广度优先双指针扫描线朴素贝叶斯推荐算法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1
2
3
4
5
6
7
8
9
10
11
12
13
14
排序算法
序号 | 内容 | 链接地址 |
---|---|---|
1 | 史上最全经典排序算法总结(Java实现) | https://thinkwon.blog.csdn.net/article/details/95616819 |
2 | 冒泡排序(Bubble Sort) | https://thinkwon.blog.csdn.net/article/details/101534473 |
3 | 选择排序(Selection Sort) | https://thinkwon.blog.csdn.net/article/details/101534721 |
4 | 插入排序(Insertion Sort) | https://thinkwon.blog.csdn.net/article/details/101537804 |
5 | 希尔排序(Shell Sort) | https://thinkwon.blog.csdn.net/article/details/101538166 |
6 | 归并排序(Merge Sort) | https://thinkwon.blog.csdn.net/article/details/101538756 |
7 | 快速排序(Quick Sort) | https://thinkwon.blog.csdn.net/article/details/101543580 |
8 | 堆排序(Heap Sort) | https://thinkwon.blog.csdn.net/article/details/101543941 |
9 | 计数排序(Counting Sort) | https://thinkwon.blog.csdn.net/article/details/101544159 |
10 | 桶排序(Bucket Sort) | https://thinkwon.blog.csdn.net/article/details/101544356 |
11 | 基数排序(Radix Sort) | https://thinkwon.blog.csdn.net/article/details/101545529 |
LeetCode
序号 | 内容 | 链接地址 |
---|---|---|
1 | LeetCode第1题 两数之和(Two Sum) | https://thinkwon.blog.csdn.net/article/details/103113049 |
2 | LeetCode第3题 无重复字符的最长子串(Longest Substring Without Repeating Characters) | https://thinkwon.blog.csdn.net/article/details/103113969 |
3 | LeetCode第7题 整数反转(Reverse Integer) | https://thinkwon.blog.csdn.net/article/details/103113167 |
4 | LeetCode第9题 回文数(Palindrome Number) | https://thinkwon.blog.csdn.net/article/details/103113151 |
5 | LeetCode第13题 罗马数字转整数(Roman to Integer) | https://thinkwon.blog.csdn.net/article/details/103113519 |
6 | LeetCode第14题 最长公共前缀(Longest Common Prefix) | https://thinkwon.blog.csdn.net/article/details/103113700 |
7 | LeetCode第20题 有效的括号(Valid Parentheses) | https://thinkwon.blog.csdn.net/article/details/103113848 |
8 | LeetCode第26题 删除排序数组中的重复项(Remove Duplicates from Sorted Array) | https://thinkwon.blog.csdn.net/article/details/103113097 |
数据库
Oracle
MySQL
数据库基础知识
序号 | 内容 | 链接地址 |
---|---|---|
1 | MySQL语句分类 | https://thinkwon.blog.csdn.net/article/details/106610851 |
2 | MySQL插入语句insert into,insert ignore into,insert into … on duplicate key update,replace into-解决唯一键约束 | https://thinkwon.blog.csdn.net/article/details/106610789 |
3 | MySQL复制表的三种方式 | https://thinkwon.blog.csdn.net/article/details/106610810 |
4 | MySQL删除表的三种方式 | https://thinkwon.blog.csdn.net/article/details/106610831 |
5 | MySQL中count(字段) ,count(主键 id) ,count(1)和count(*)的区别 | https://thinkwon.blog.csdn.net/article/details/106610859 |
数据类型
引擎
索引
三大范式
常用SQL语句
存储过程与函数
视图
MySQL优化
事务
数据备份与还原
Redis
序号 | 内容 | 链接地址 |
---|---|---|
1 | Redis总结 | https://thinkwon.blog.csdn.net/article/details/99999584 |
2 | Redis使用场景 | https://thinkwon.blog.csdn.net/article/details/101521497 |
3 | Redis数据类型 | https://thinkwon.blog.csdn.net/article/details/101521724 |
4 | Redis持久化 | https://thinkwon.blog.csdn.net/article/details/101522209 |
5 | Redis过期键的删除策略 | https://thinkwon.blog.csdn.net/article/details/101522970 |
6 | Redis数据淘汰策略 | https://thinkwon.blog.csdn.net/article/details/101530624 |
7 | Redis与Memcached的区别 | https://thinkwon.blog.csdn.net/article/details/101530406 |
8 | Redis常见面试题(精简版) | https://thinkwon.blog.csdn.net/article/details/103522351 |
9 | Redis中缓存雪崩、缓存穿透等问题的解决方案 | https://thinkwon.blog.csdn.net/article/details/103402008 |
10 | 阿里云Redis开发规范学习总结 | https://thinkwon.blog.csdn.net/article/details/103400250 |
11 | Redis开发常用规范 | https://thinkwon.blog.csdn.net/article/details/103401781 |
12 | 这可能是最中肯的Redis规范了 | https://thinkwon.blog.csdn.net/article/details/103401978 |
Java虚拟机
深入理解Java虚拟机
序号 | 内容 | 链接地址 |
---|---|---|
1 | 深入理解Java虚拟机-走近Java | https://thinkwon.blog.csdn.net/article/details/103804387 |
2 | 深入理解Java虚拟机-Java内存区域与内存溢出异常 | https://thinkwon.blog.csdn.net/article/details/103827387 |
3 | 深入理解Java虚拟机-垃圾回收器与内存分配策略 | https://thinkwon.blog.csdn.net/article/details/103831676 |
4 | 深入理解Java虚拟机-虚拟机执行子系统 | https://thinkwon.blog.csdn.net/article/details/103835168 |
5 | 深入理解Java虚拟机-程序编译与代码优化 | https://thinkwon.blog.csdn.net/article/details/103835883 |
6 | 深入理解Java虚拟机-高效并发 | https://thinkwon.blog.csdn.net/article/details/103836167 |
架构设计
高可用架构
高并发架构
可伸缩架构
集群
设计模式
常用设计模式
创建型:
单例模式、工厂模式、抽象工厂模式
结构型:
适配器模式、外观模式、代理模式、装饰器模式
行为型:
观察者模式、策略模式、模板模式
序号 | 内容 | 链接地址 |
---|---|---|
1 | 设计模式 | https://thinkwon.blog.csdn.net/article/details/96829572 |
创建型模式
结构型模式
行为型模式
J2EE模式
实践应用
序号 | 内容 | 链接地址 |
---|---|---|
1 | 业务复杂=if else?刚来的大神竟然用策略+工厂彻底干掉了他们! | https://thinkwon.blog.csdn.net/article/details/102924813 |
应用框架
如何学习一个框架或者技术
是什么,简介,概述
有什么用,用途,使用场景
怎么用,在实际开发中的应用,注意事项
优缺点
框架原理,工作流程,工作原理
常见面试题
源码分析,核心类,核心方法,设计模式
发布博客,在开发和实践中,博客反馈中持续改进
与同事朋友交流,技术论坛,技术分享中持续丰富知识
常用框架
集成开发工具(IDE):Eclipse、MyEclipse、Spring Tool Suite(STS)、Intellij IDEA、NetBeans、JBuilder、JCreator
JAVA服务器:tomcat、jboss、websphere、weblogic、resin、jetty、apusic、apache
负载均衡:nginx、lvs
web层框架:Spring MVC、Struts2、Struts1、Google Web Toolkit(GWT)、JQWEB
服务层框架:Spring、EJB
持久层框架:Hibernate、MyBatis、JPA、TopLink
数据库:Oracle、MySql、MSSQL、Redis
项目构建:maven、ant
持续集成:Jenkins
版本控制:SVN、CVS、VSS、GIT
私服:Nexus
消息组件:IBM MQ、RabbitMQ、ActiveMQ、RocketMq
日志框架:Commons Logging、log4j 、slf4j、IOC
缓存框架:memcache、redis、ehcache、jboss cache
RPC框架:Hessian、Dubbo
规则引擎:Drools
工作流:Activiti
批处理:Spring Batch
通用查询框架:Query DSL
JAVA安全框架:shiro、Spring Security
代码静态检查工具:FindBugs、PMD
Linux操作系统:CentOS、Ubuntu、SUSE Linux、
常用工具:PLSQL Developer(Oracle)、Navicat(MySql)、FileZilla(FTP)、Xshell(SSH)、putty(SSH)、SecureCRT(SSH)、jd-gui(反编译)
Spring
序号 | 内容 | 链接地址 |
---|---|---|
1 | Spring简介、设计理念、优缺点、应用场景 | https://thinkwon.blog.csdn.net/article/details/102810748 |
2 | Spring模块组成(框架组成、整体架构、体系架构、体系结构) | https://thinkwon.blog.csdn.net/article/details/102810819 |
3 | Spring容器中bean的生命周期 | https://thinkwon.blog.csdn.net/article/details/102866432 |
4 | 控制反转(IoC)与依赖注入(DI)详解 | https://thinkwon.blog.csdn.net/article/details/102912332 |
《Spring实战》读书笔记
序号 | 内容 | 链接地址 |
---|---|---|
1 | 《Spring实战》读书笔记-第1章 Spring之旅 | https://thinkwon.blog.csdn.net/article/details/103097364 |
2 | 《Spring实战》读书笔记-第2章 装配Bean | https://thinkwon.blog.csdn.net/article/details/103527675 |
3 | 《Spring实战》读书笔记-第3章 高级装配 | https://thinkwon.blog.csdn.net/article/details/103536621 |
4 | 《Spring实战》读书笔记-第4章 面向切面的Spring | https://thinkwon.blog.csdn.net/article/details/103541166 |
5 | 《Spring实战》读书笔记-第5章 构建Spring Web应用程序 | https://thinkwon.blog.csdn.net/article/details/103550083 |
6 | 《Spring实战》读书笔记-第6章 渲染Web视图 | https://thinkwon.blog.csdn.net/article/details/103559672 |
7 | 《Spring实战》读书笔记-第7章 Spring MVC的高级技术 | https://thinkwon.blog.csdn.net/article/details/103562467 |
Spring MVC
MyBatis
Hibernate
Shiro
Spring Security
Netty
搜索引擎
Lucene/Solr
Elasticsearch
ELK
中间件
消息中间件
RabbitMQ
RocketMQ
ActiveMQ
Kafka
远程过程调用中间件
Dubbo
数据访问中间件
Sharding JDBC
MyCat
Web应用服务器
Tomcat
待整理:Tomcat各组件作用 Tomcat集群 Tomcat面试题
序号 | 内容 | 链接地址 |
---|---|---|
1 | Win10安装Tomcat服务器与配置环境变量 | https://thinkwon.blog.csdn.net/article/details/102622905 |
2 | Linux(CentOS7)安装Tomcat与设置Tomcat为开机启动项 | https://thinkwon.blog.csdn.net/article/details/102717537 |
3 | Tomcat与JDK版本对应关系,Tomcat各版本特性 | https://thinkwon.blog.csdn.net/article/details/102622738 |
4 | Tomcat目录结构 | https://thinkwon.blog.csdn.net/article/details/102619466 |
5 | Tomcat乱码与端口占用的解决方案 | https://thinkwon.blog.csdn.net/article/details/102622824 |
6 | Tomcat系统架构与请求处理流程 | https://thinkwon.blog.csdn.net/article/details/102676442 |
7 | 史上最强Tomcat8性能优化 | https://thinkwon.blog.csdn.net/article/details/102744033 |
Nginx
缓存
本地缓存
客户端缓存
服务端缓存
web缓存,Redis,Memcached,Ehcache
其他
Zookeeper
微服务与分布式
Spring Boot
序号 | 内容 | 链接地址 |
---|---|---|
1 | application.yml与bootstrap.yml的区别 | https://thinkwon.blog.csdn.net/article/details/100007093 |
2 | 一分钟了解约定优于配置 | https://thinkwon.blog.csdn.net/article/details/101703815 |
Spring Cloud
服务注册发现
服务配置
负载均衡
服务调用
服务限流
熔断降级
网关路由
服务权限
链路追踪
分布式事务
分布式缓存
分布式会话
日志收集
服务监控
消息驱动
数据处理流
自动化测试与部署
第三方支持
分布式协调服务Zookeeper
程序员的一些思考
序号 | 内容 | 链接地址 |
---|---|---|
1 | 程序员写个人技术博客的价值与意义 | https://thinkwon.blog.csdn.net/article/details/102980571 |
2 | Java知识体系最强总结(2020版) | https://thinkwon.blog.csdn.net/article/details/103592572 |
团队与项目管理
需求调研
项目管理
序号 | 内容 | 链接地址 |
---|---|---|
1 | Worktile、Teambition与Tower项目管理软件对比 | https://thinkwon.blog.csdn.net/article/details/106064807 |
代码管理
文档管理
序号 | 内容 | 链接地址 |
---|---|---|
1 | 几款常见接口管理平台对比 | https://thinkwon.blog.csdn.net/article/details/106064883 |
2 | Swagger2常用注解说明 | https://thinkwon.blog.csdn.net/article/details/107477801 |
测试
运维
常规监控
APM
持续集成(CI/CD):Jenkins,环境分离
自动化运维:Ansible,puppet,chef
测试:TDD 理论,单元测试,压力测试,全链路压测,A/B 、灰度、蓝绿测试
虚拟化:KVM,Xen,OpenVZ
容器技术:Docker
云技术:OpenStack
DevOps
操作系统
计算机操作系统
计算机原理
Linux
CPU
进程,线程,协程
推荐书籍
云计算
IaaS、SaaS、PaaS、虚拟化技术、openstack、Serverlsess
搜索引擎
Solr、Lucene、Nutch、Elasticsearch
权限管理
Shiro、Spring Security
区块链
哈希算法、Merkle树、公钥密码算法、共识算法、Raft协议、Paxos 算法与 Raft 算法、拜占庭问题与算法、消息认证码与数字签名