Java知识体系最强总结(2021版)-程序员宅基地

技术标签: JVM  并发编程  数据结构与算法  数据库  程序员的一些思考  Java基础知识  

你是否有为快速开发各种报表而烦恼?遇到类似如下的问题:

  • 表格少的,可以用代码写,几十上百张表格呢,纯手工需要用多少时间?
  • 格式复杂,逻辑复杂的,做起来更是头大
  • 需求总变来变去,修改和维护成本太高
  • 图形自己做不美观,而且工作量巨大
  • 用第三方的相对简单,但集成和学习成本也不小

从各行业合作伙伴的实际使用情况,证明使用下文说的报表做表格和图形,可以极大的提升效率,节省成本,详情请查看文章:https://thinkwon.blog.csdn.net/article/details/125035932
文章干货多多,欢迎一键三连,谢谢

更新于2021-08-13 22:55:12

欢迎关注微信公众号【技术人成长之路】

【技术人成长之路】,助力技术人成长!更多精彩文章第一时间在公众号发布哦!

本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的习惯,整理了一些有关Java的知识体系,这不是最终版,会不定期的更新。也算是记录自己在从事编程工作的成长足迹,通过博客可以促进博主与阅读者的共同进步,结交更多志同道合的朋友。特此分享给大家,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽

整理的Java知识体系主要包括基础知识,工具,并发编程,数据结构与算法,数据库,JVM,架构设计,应用框架,中间件,微服务架构,分布式架构,程序员的一些思考,团队与项目管理,运维,权限,推荐书籍,云计算,区块链等,包含了作为一个Java工程师在开发工作学习中需要用到或者可能用到的绝大部分知识。千里之行始于足下,希望大家根据自己的薄弱点,查缺补漏,根据自己感兴趣的方面多学习,学的精通一点,从现在开始行动起来。路漫漫其修远兮,吾将上下而求索,不管编程开发的路有多么难走,多么艰辛,我们都将百折不挠,不遗余力地去追求和探索

文章目录

Java面试总结

Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java工程师在面试中需要用到或者可能用到的绝大部分知识。欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。文章持续更新中…

序号 内容 链接地址
1 Java基础知识面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390612
2 Java集合容器面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588551
3 Java异常面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390689
4 并发编程面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104863992
5 JVM面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390752
6 Spring面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397516
7 Spring MVC面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397427
8 Spring Boot面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397299
9 Spring Cloud面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397367
10 MyBatis面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/101292950
11 Redis面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/103522351
12 MySQL数据库面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104778621
13 消息中间件MQ与RabbitMQ面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588612
14 Dubbo面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104390006
15 Linux面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104588679
16 Tomcat面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397665
17 ZooKeeper面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104397719
18 Netty面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/104391081
19 架构设计&分布式&数据结构与算法面试题(2020最新版) https://thinkwon.blog.csdn.net/article/details/105870730

基础知识

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
6 Java是编译型还是解释型语言 https://thinkwon.blog.csdn.net/article/details/108678327

基础语法

大部分已完成

待整理:

Java开发必会的反编译知识(附支持对Lambda进行反编译的工具)

一文读懂什么是Java中的自动拆装箱

Java的枚举类型用法介绍

类、枚举、接口、数组、可变参数

泛型、序列化

序号 内容 链接地址
1 Java标识符 https://thinkwon.blog.csdn.net/article/details/101637454
2 Java关键字(Java 8版本) https://thinkwon.blog.csdn.net/article/details/101642385
3 Java注释 https://thinkwon.blog.csdn.net/article/details/101643185
4 Java访问修饰符 https://thinkwon.blog.csdn.net/article/details/101643412
5 Java分隔符 https://thinkwon.blog.csdn.net/article/details/101643617
6 Java转义字符 https://thinkwon.blog.csdn.net/article/details/101643769
7 Java进制 https://thinkwon.blog.csdn.net/article/details/101643936
8 Java流程控制语句 https://thinkwon.blog.csdn.net/article/details/101645978
9 Java流程控制语句-顺序结构 https://thinkwon.blog.csdn.net/article/details/101644820
10 Java流程控制语句-分支结构 https://thinkwon.blog.csdn.net/article/details/101645224
11 Java流程控制语句-循环结构 https://thinkwon.blog.csdn.net/article/details/101645757
12 Java表达式 https://thinkwon.blog.csdn.net/article/details/101648114
13 Java运算符 https://thinkwon.blog.csdn.net/article/details/101649002
14 Java变量 https://thinkwon.blog.csdn.net/article/details/101649292
15 Java常量 https://thinkwon.blog.csdn.net/article/details/101649446
16 Java数据类型 https://thinkwon.blog.csdn.net/article/details/101649568
17 Java反射 https://thinkwon.blog.csdn.net/article/details/100128361
18 Java语法糖 https://thinkwon.blog.csdn.net/article/details/100103689
19 Java注解 https://thinkwon.blog.csdn.net/article/details/100178709
20 JSON简介 https://thinkwon.blog.csdn.net/article/details/100642585
21 Properties类简介 https://thinkwon.blog.csdn.net/article/details/100667783
22 XML简介 https://thinkwon.blog.csdn.net/article/details/100642425
23 YML简介 https://thinkwon.blog.csdn.net/article/details/100642870
24 Java8新特性-Lambda表达式 https://thinkwon.blog.csdn.net/article/details/100642932
25 Java基础语法 https://thinkwon.blog.csdn.net/article/details/94354151

面向对象

待整理:

抽象

继承、封装、多态

接口、抽象类、内部类

序号 内容 链接地址
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

String、StringBuffer、StringBuilder、正则表达式

Number、Radom、Math、System、包装类

Arrays、Collections

日期时间API
序号 内容 链接地址
1 Java7日期时间API https://thinkwon.blog.csdn.net/article/details/110777654
2 史上最全Java7日期时间工具类 https://thinkwon.blog.csdn.net/article/details/110779441
3 Java8日期时间API https://thinkwon.blog.csdn.net/article/details/111087199
4 史上最全Java8日期时间工具类 https://thinkwon.blog.csdn.net/article/details/111116600

常用工具类库

待整理: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

Java8新特性

序号 内容 链接地址
1 Java8新特性-Lambda表达式 https://thinkwon.blog.csdn.net/article/details/113764085
2 Java8新特性-Optional https://thinkwon.blog.csdn.net/article/details/113791796
3 Java8新特性-Stream https://thinkwon.blog.csdn.net/article/details/113798096
4 Java8新特性-Base64 https://thinkwon.blog.csdn.net/article/details/113798575
5 Java8新特性-日期时间API https://thinkwon.blog.csdn.net/article/details/111087199

工具

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
4 Docker 从入门到实践系列二 - Docker 安装 https://thinkwon.blog.csdn.net/article/details/117638107
5 Docker 从入门到实践系列三 - Docker 常用命令 https://thinkwon.blog.csdn.net/article/details/117638128
6 Docker 从入门到实践系列四 - Docker 容器编排利器 Docker Compose https://thinkwon.blog.csdn.net/article/details/119511551

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、基础技巧:分治、倍增、二分法、贪心算法

宽度优先搜索
深度优先搜索
广度优先
双指针
扫描线

朴素贝叶斯
推荐算法
排序算法
序号 内容 链接地址
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
创建型模式
序号 内容 链接地址
1 抽象工厂模式 https://thinkwon.blog.csdn.net/article/details/101382584
2 单例模式 https://thinkwon.blog.csdn.net/article/details/101382855
3 工厂模式 https://thinkwon.blog.csdn.net/article/details/101383285
4 建造者模式 https://thinkwon.blog.csdn.net/article/details/101383401
5 原型模式 https://thinkwon.blog.csdn.net/article/details/101383491
结构型模式
序号 内容 链接地址
1 代理模式 https://thinkwon.blog.csdn.net/article/details/101384436
2 过滤器模式 https://thinkwon.blog.csdn.net/article/details/101384514
3 桥接模式 https://thinkwon.blog.csdn.net/article/details/101384584
4 适配器模式 https://thinkwon.blog.csdn.net/article/details/101384619
5 外观模式 https://thinkwon.blog.csdn.net/article/details/101384676
6 享元模式 https://thinkwon.blog.csdn.net/article/details/101384716
7 装饰器模式 https://thinkwon.blog.csdn.net/article/details/101384753
8 组合模式 https://thinkwon.blog.csdn.net/article/details/101384786
行为型模式
序号 内容 链接地址
1 备忘录模式 https://thinkwon.blog.csdn.net/article/details/101383582
2 策略模式 https://thinkwon.blog.csdn.net/article/details/101383647
3 迭代器模式 https://thinkwon.blog.csdn.net/article/details/101383722
4 访问者模式 https://thinkwon.blog.csdn.net/article/details/101383780
5 观察者模式 https://thinkwon.blog.csdn.net/article/details/101383872
6 解释器模式 https://thinkwon.blog.csdn.net/article/details/101383930
7 空对象模式 https://thinkwon.blog.csdn.net/article/details/101384001
8 命令模式 https://thinkwon.blog.csdn.net/article/details/101384090
9 模板模式 https://thinkwon.blog.csdn.net/article/details/101384138
10 责任链模式 https://thinkwon.blog.csdn.net/article/details/101384195
11 中介者模式 https://thinkwon.blog.csdn.net/article/details/101384251
12 状态模式 https://thinkwon.blog.csdn.net/article/details/101384315
J2EE模式
序号 内容 链接地址
1 MVC模式 https://thinkwon.blog.csdn.net/article/details/101381701
2 传输对象模式 https://thinkwon.blog.csdn.net/article/details/101382134
3 服务定位器模式 https://thinkwon.blog.csdn.net/article/details/101382179
4 拦截过滤器模式 https://thinkwon.blog.csdn.net/article/details/101382210
5 前端控制器模式 https://thinkwon.blog.csdn.net/article/details/101382247
6 数据访问对象模式 https://thinkwon.blog.csdn.net/article/details/101382287
7 业务代表模式 https://thinkwon.blog.csdn.net/article/details/101382356
8 组合实体模式 https://thinkwon.blog.csdn.net/article/details/101382390
实践应用
序号 内容 链接地址
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

序号 内容 链接地址
1 MyBatis官方文档 https://thinkwon.blog.csdn.net/article/details/100887995
2 MyBatis官方文档-简介 https://thinkwon.blog.csdn.net/article/details/100887076
3 MyBatis官方文档-入门 https://thinkwon.blog.csdn.net/article/details/100887176
4 MyBatis官方文档-XML 配置 https://thinkwon.blog.csdn.net/article/details/100887349
5 MyBatis官方文档-XML 映射文件 https://thinkwon.blog.csdn.net/article/details/100887478
6 MyBatis官方文档-动态 SQL https://thinkwon.blog.csdn.net/article/details/100887702
7 MyBatis官方文档-Java API https://thinkwon.blog.csdn.net/article/details/100887746
8 MyBatis官方文档-SQL 语句构建器类 https://thinkwon.blog.csdn.net/article/details/100887821
9 MyBatis官方文档-日志 https://thinkwon.blog.csdn.net/article/details/100887951
10 MyBatis功能架构 https://thinkwon.blog.csdn.net/article/details/101295025
11 MyBatis工作原理 https://thinkwon.blog.csdn.net/article/details/101293609
12 MyBatis核心类 https://thinkwon.blog.csdn.net/article/details/101293216
13 MyBatis面试宝典 https://thinkwon.blog.csdn.net/article/details/101292950
14 MyBatis实现一对一,一对多关联查询 https://thinkwon.blog.csdn.net/article/details/101322334
15 MyBatis缓存 https://thinkwon.blog.csdn.net/article/details/101351212
MyBatis 源码分析
序号 内容 链接地址
1 MyBatis 源码分析 - MyBatis入门 https://thinkwon.blog.csdn.net/article/details/114808852
2 MyBatis 源码分析 - 配置文件解析过程 https://thinkwon.blog.csdn.net/article/details/114808962
3 MyBatis 源码分析 - 映射文件解析过程 https://thinkwon.blog.csdn.net/article/details/115423167
4 MyBatis 源码分析 - SQL 的执行过程 https://thinkwon.blog.csdn.net/article/details/115603376
5 MyBatis 源码分析 - 内置数据源 https://thinkwon.blog.csdn.net/article/details/116331419
6 MyBatis 源码分析 - 缓存原理 https://thinkwon.blog.csdn.net/article/details/116809942
7 MyBatis 源码分析 - 插件机制 https://thinkwon.blog.csdn.net/article/details/116809961

Quartz

序号 内容 链接地址
1 Quartz简介 https://thinkwon.blog.csdn.net/article/details/109936696

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

序号 内容 链接地址
1 Spring Cloud入门-十分钟了解Spring Cloud https://thinkwon.blog.csdn.net/article/details/103715146
2 Spring Cloud入门-Eureka服务注册与发现(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103726655
3 Spring Cloud入门-Ribbon服务消费者(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103729080
4 Spring Cloud入门-Hystrix断路器(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103732497
5 Spring Cloud入门-Hystrix Dashboard与Turbine断路器监控(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103734664
6 Spring Cloud入门-OpenFeign服务消费者(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103735751
7 Spring Cloud入门-Zuul服务网关(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103738851
8 Spring Cloud入门-Config分布式配置中心(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103739628
9 Spring Cloud入门-Bus消息总线(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103753372
10 Spring Cloud入门-Sleuth服务链路跟踪(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103753896
11 Spring Cloud入门-Consul服务注册发现与配置中心(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103756139
12 Spring Cloud入门-Gateway服务网关(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103757927
13 Spring Cloud入门-Admin服务监控中心(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103758697
14 Spring Cloud入门-Oauth2授权的使用(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103761687
15 Spring Cloud入门-Oauth2授权之JWT集成(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103763364
16 Spring Cloud入门-Oauth2授权之基于JWT完成单点登录(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103766368
17 Spring Cloud入门-Nacos实现注册和配置中心(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103769680
18 Spring Cloud入门-Sentinel实现服务限流、熔断与降级(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103770879
19 Spring Cloud入门-Seata处理分布式事务问题(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103786102
20 Spring Cloud入门-汇总篇(Hoxton版本) https://thinkwon.blog.csdn.net/article/details/103786588

服务注册发现

服务配置

负载均衡

服务调用

服务限流

熔断降级

网关路由

服务权限

链路追踪

分布式事务

分布式缓存

分布式会话

日志收集

服务监控

消息驱动

数据处理流

自动化测试与部署

第三方支持

分布式协调服务Zookeeper

程序员的一些思考

序号 内容 链接地址
1 程序员写个人技术博客的价值与意义 https://thinkwon.blog.csdn.net/article/details/102980571
2 Java知识体系最强总结(2020版) https://thinkwon.blog.csdn.net/article/details/103592572
3 博客之星,有你的鼓励更精彩 https://thinkwon.blog.csdn.net/article/details/112517796

团队与项目管理

需求调研

项目管理

序号 内容 链接地址
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

测试

Python

序号 内容 链接地址
1 Win10安装Python3.9 https://thinkwon.blog.csdn.net/article/details/112411897
2 Anaconda安装 https://thinkwon.blog.csdn.net/article/details/112412165
3 PyCharm2020.3.2安装 https://thinkwon.blog.csdn.net/article/details/112412497
4 PyCharm常用配置和常用插件 https://thinkwon.blog.csdn.net/article/details/112412783

运维

常规监控

APM

持续集成(CI/CD):Jenkins,环境分离

自动化运维:Ansible,puppet,chef

测试:TDD 理论,单元测试,压力测试,全链路压测,A/B 、灰度、蓝绿测试

虚拟化:KVM,Xen,OpenVZ

容器技术:Docker

云技术:OpenStack

DevOps

操作系统

计算机操作系统

计算机原理

Linux

CPU

进程,线程,协程

CentOS8

序号 内容 链接地址
1 VMware Workstation Pro 16搭建CentOS8虚拟机集群 https://thinkwon.blog.csdn.net/article/details/115058171
2 CentOS8安装Docker https://thinkwon.blog.csdn.net/article/details/115056214
3 CentOS8搭建Nacos1.4.0集群 https://thinkwon.blog.csdn.net/article/details/115056401
4 CentOS8安装GitLab13.7.2 https://thinkwon.blog.csdn.net/article/details/115056528
5 CentOS8安装MySQL8 https://thinkwon.blog.csdn.net/article/details/115055934

推荐书籍

序号 内容 链接地址
1 读书清单-计算机 https://thinkwon.blog.csdn.net/article/details/108077754

读书笔记

序号 内容 链接地址
1 高效休息法-读书笔记 https://thinkwon.blog.csdn.net/article/details/118638191
2 斯坦福高效睡眠法-读书笔记 https://thinkwon.blog.csdn.net/article/details/108349844
3 高效能人士的七个习惯-读书笔记 https://thinkwon.blog.csdn.net/article/details/108941111
4 富爸爸穷爸爸-读书笔记 https://thinkwon.blog.csdn.net/article/details/109261723
5 如何阅读一本书-读书笔记 https://thinkwon.blog.csdn.net/article/details/115422659
6 人性的弱点-读书笔记 https://thinkwon.blog.csdn.net/article/details/116809824
7 麦肯锡极简工作法-读书笔记 https://thinkwon.blog.csdn.net/article/details/118638191

云计算

IaaS、SaaS、PaaS、虚拟化技术、openstack、Serverlsess

搜索引擎

Solr、Lucene、Nutch、Elasticsearch

权限管理

Shiro、Spring Security

区块链

哈希算法、Merkle树、公钥密码算法、共识算法、Raft协议、Paxos 算法与 Raft 算法、拜占庭问题与算法、消息认证码与数字签名

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ThinkWon/article/details/103592572

智能推荐

IOS学习—强引用(__strong)和 弱引用(__weak)_ios __strong-程序员宅基地

文章浏览阅读2.6k次。转载于开源中国在Objective-C的ARC模式中,id obj1 = [[NSObject alloc] init]; 这里虽然没有显示的声明为__strong,但是Objective-C默认声明的一个对象就为__strong,即: id obj1 = [[NSObject alloc] init]; 和 id __strong obj1 = [[NSObject alloc] init_ios __strong

ubuntu18.04下qt5.9编译错误: -1: error: cannot find -lGL_:-1: error: /usr/local/qt-5.9/lib/libqt5core.so: u-程序员宅基地

文章浏览阅读2.1k次。只要安装libGL即可:sudo apt-get install libqt4-devsudo apt update再重新编译就ok啦 _:-1: error: /usr/local/qt-5.9/lib/libqt5core.so: undefined reference to `uca

如何绘制深度神经网络图_深度学习神经网络图怎么画-程序员宅基地

文章浏览阅读2.7k次,点赞4次,收藏22次。1.在线版本的NN-SVG_深度学习神经网络图怎么画

菜鸟学习Android笔记-20140311_textview3:[i18n] hardcoded string-程序员宅基地

文章浏览阅读771次。1、编写布局文件时,遇到这样的警告,“[I18N] Hardcoded string "昵称:", should use @string resource” 原来的代码:

不同参数统计运行时间 large_integer c语言,使用LARGE_INTEGER查看系统运行时间-程序员宅基地

文章浏览阅读252次。众所周知,windows ce是一个实时操作,因此提供了不少的优先级给用户.优先级最高为0级,也就是说使用0优先级的程序, 可以挂起整个系统, 来运行你的程序对于实时性比较的领域, 我们作为程序员的 应该清楚的知道你的程序模块运行的时间 是非常必要的. 当然这个模块运行的时间也不是完全的稳定的, 几次运行的时间相差几十毫秒是很正常的. 因此我们只要知道大概的时间就可以了.当然, 大家..._large_integer计算时间

ssh登陆服务器locale告警(-bash: warning: setlocale:)的处理方法-程序员宅基地

文章浏览阅读1.9k次。 使用ssh远程登陆 IDC机房服务器,发现老是出现如下告警信息:-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_U..._bash: warning: setlocale: lc_ctype: cannot change locale (en_us.utf-8): no s

随便推点

SQL中IF ELSE及MySQL伪列rownum的使用_mysql 如何使用if else 生成伪列-程序员宅基地

文章浏览阅读290次。编写SQL语句时难免会遇到各种条件判断,例如统计:count(case when then end)今天,我们要说的是if判断,eg:SELECT IF(c19='1','已评价','未评价')c19 FROM A05;关于伪列,广为人知的是oracle有伪列rownum,因为一些需求需要用mysql实现类似Oracle的伪列,方法方式如下:SELECT rowid, i01..._mysql 如何使用if else 生成伪列

【C++】虚函数及其内存布局_c++虚函数内存分布-程序员宅基地

文章浏览阅读1.7k次,点赞5次,收藏20次。一、函数调用捆绑把函数体与函数调用相联系称为捆绑。当捆绑在程序运行之前(由编译器和连接器)完成时,称为早捆绑。C编译只有一种函数调用方式,就是早捆绑。早捆绑引起的问题:因为编译器在只有对象的地址时它并不知道要调用的正确函数。根据对象的类型,捆绑发生在运行时,这种捆绑方式称为晚捆绑,又称动态捆绑。二、虚函数对于特定的函数,为了引起晚捆绑,C++要求在基类中声明这个函数时使用virtual关键字,这样的函数称为虚函数。晚捆绑只对virtual函数起作用,而且只在使用含有virtual函._c++虚函数内存分布

matlab 相位校正,科学网—全相位比值校正法 - 王兆华的博文-程序员宅基地

文章浏览阅读709次。加hann窗全相位比值校正法和加hann窗fft比值校正法校正方法类同,只须将二个振幅比改为振幅开方比即可。这里加hann窗是关键,过去测试时,直接调用Matlab中的hann(N)窗,频率和振幅校正效果差,见表5加hann窗全相位比值校正法测试结果。表4为加n-hann窗全相位比值校正法,其频率校正精度,相位校正精度和振幅校正精度都很高,甚至可以和表1加n-hann卷积窗apfft/apfft校..._比值校正法频谱校正matlab

创建登录界面_建网站登录页面-程序员宅基地

文章浏览阅读334次。package zhoushi;import javax.swing.*;//调用库import java.awt.*;import java.awt.event.*;public class jh extends JFrame implements ActionListener{//创建类jh继承JFrame,实现接口ActionListener JPanel log;//定义变量_建网站登录页面

win10安装linux虚拟机并配置shell工具连接_shell确认虚拟机光盘连接-程序员宅基地

文章浏览阅读1k次。1:虚拟机安装先看怎么用VMware安装一个虚拟机,全部放图,一步步来。主要还是以防以后我自己忘记怎么搞了,老了,记性不好了。VMware就在网上随便下载一个了,镜像我会在下面放上我的或者大家也可以自己去网上下一个。第一步:新建虚拟机第二步:选择类型第三步:选择映像文件,一般都会检测到,检测不到就只能自己打开浏览去找吧!第四步:给虚拟机命名,可以更改虚拟机安装位置。反正我是不会装在系统盘的,这辈子都不会的o(´^`)o第五步:默认选择是虚拟磁盘拆分成多个文件,但._shell确认虚拟机光盘连接

计算机视觉模型常用评价指标_平均交并比-程序员宅基地

文章浏览阅读3.6k次,点赞9次,收藏36次。分类任务常用准确率、精确率、召回率、F1_scores、ROC曲线等指标来评价模型的优劣,当然这些基础指标也可以用来评价分割模型或检测模型,它们基本上是可以通用的。混淆矩阵是对分类问题预测结果的总结,也是衡量分类型模型准确度中最基本,最直观,计算最简单的方法。混淆矩阵中含有4个分类问题的基础指标,如下表所示。........._平均交并比