Java 架构知识点整理
架构学习
1. Java 核心技术
1.1. 基础知识
1.1.1. 进制转换
1.1.2. 异常处理
1.1.3. List 分批代码
1.1.4. 字符串分割
1.1.5. 编码风格
1.2. 并发编程
1.2.1. 参考文章
1.2.2. 并发编程基础
1.2.3. 线程的安全性问题
1.2.4. 处理器内存模型
1.2.5. Java 内存模型(JMM)
1.2.6. volatile 关键字
1.2.7. synchronized 关键字
1.2.8. wait notify
1.2.9. Lock
1.2.10. 同步器使用
1.2.11. 同步器原理分析
1.2.12. ReentrantLock 实现原理分析
1.2.13. condition
1.2.14. CountDownLatch
1.2.15. 线程池简介
1.2.16. ThreadLocal
1.2.17. FastThreadLocal
1.3. JVM
1.3.1. 待整理
1.3.2. JVM 常用参数
1.3.3. Java 逃逸分析
1.3.4. JVM 内存管理
1.3.5. JVM 对象分析
1.3.6. JVM 垃圾回收
1.3.7. JVM 内存分配
1.3.8. JVM 命令行调优工具
1.3.9. JVM 图形化调优工具
1.3.10. JVM Class 文件结构
1.3.11. JVM 字节码指令
1.3.12. JVM 类加载机制
2. 内功心法
2.1. UML
2.1.1. 类图
2.1.2. 时序图
2.2. 软件设计原则
2.2.1. 开闭原则
2.2.2. 依赖倒置原则
2.2.3. 单一职责原则
2.2.4. 接口隔离原则
2.2.5. 迪米特原则
2.2.6. 里氏替换原则
2.2.7. 合成复用原则
2.3. 常用设计模式
2.3.1. 简介
2.3.2. 工厂模式(Factory Method)
2.3.3. 单例模式(Singleton)
2.3.4. 破坏单例模式
2.3.5. 原型模式(Prototype)
2.3.6. 代理模式(Proxy)
2.3.7. 策略模式(Strategy)
2.3.8. 模板模式(Template Method)
2.3.9. 委派模式(Delegate)
2.3.10. 适配器模式(Adapter)
2.3.11. 装饰器模式(Decorator)
2.3.12. 观察者模式(Observer)
3. 源码分析
3.1. MyBatis 源码
3.1.1. 目录
3.1.2. 实用篇
3.1.2.1. MyBatis 概念
3.1.2.2. MyBatis 示例-简介
3.1.2.3. MyBatis 示例-类型处理器
3.1.2.4. MyBatis 示例-传递多个参数
3.1.2.5. MyBatis 示例-主键回填
3.1.2.6. MyBatis 示例-动态 SQL
3.1.2.7. MyBatis 示例-联合查询
3.1.2.8. MyBatis 示例-缓存
3.1.2.9. MyBatis 示例-插件
3.1.3. 源码篇
3.1.3.1. MyBatis 源码篇-整体架构
3.1.3.2. MyBatis 源码篇-SQL 执行的流程
3.1.3.3. MyBatis 源码篇-资源加载
3.1.3.4. MyBatis 源码篇-日志模块1
3.1.3.5. MyBatis 源码篇-日志模块2
3.1.3.6. MyBatis 源码篇-插件模块
3.1.3.7. MyBatis 源码篇-DataSource
3.1.3.8. MyBatis 源码篇-Transaction
3.1.3.9. MyBatis 源码篇-MyBatis-Spring 剖析
3.1.4. 事故处理篇
3.1.4.1. MyBatis 数值类型 where 条件配置的坑
4. MySQL
4.1. 目录
4.2. 基础篇
4.2.1. 三范式
4.2.2. MySQL 军规
4.2.3. MySQL 配置
4.2.4. MySQL 用户管理和权限设置
4.2.5. MySQL 常用函数介绍
4.2.6. MySQL 字段类型介绍
4.2.7. MySQL 多列排序
4.2.8. MySQL 行转列 列转行
4.2.9. MySQL NULL 使用带来的坑
4.2.10. MySQL AND 和 OR 联合使用带来的坑
4.2.11. MySQL 中文按中文拼音排序
4.2.12. MySQL 触发器的使用
4.3. 原理篇
4.3.1. MySQL 索引机制
4.3.2. MySQL 体系结构及存储引擎
4.3.3. MySQL 语句执行过程详解
4.3.4. MySQL 执行计划详解
4.3.5. MySQL InnoDB 缓冲池
4.3.6. MySQL InnoDB 事务
4.3.7. MySQL InnoDB 锁
4.3.8. MySQL InnoDB MVCC
4.3.9. MySQL InnoDB 实现高并发原理
4.3.10. MySQL InnoDB 快照读在RR和RC下有何差异
4.3.11. MySQL 索引合并(待整理)
4.4. 优化篇
4.4.1. 优化篇-汇总
4.4.2. 查询优化的基本思路
4.4.3. MySQL 如何定位慢查询 SQL
4.4.4. MySQL 分页查询优化
4.5. 设计篇
4.5.1. 数据库架构
4.5.2. 数据库主从不一致
4.5.3. 解决并发更新导致的一致性问题
4.5.4. 跨库分页方案
4.5.5. 数据迁移方案一
4.5.6. 数据迁移方案二
4.5.7. 分库分表方案
4.5.8. 在线修改大表结构
4.5.9. 数据备份方案
4.5.10. 解决冗余数据一致性的问题
4.6. 事故处理篇
4.6.1. MySQL 死锁分析
4.7. 参考文章
5. 职场
5.1. 职场资料整理
5.2. 简历制作技巧
5.3. Java 面试资源整理
Java 架构知识点整理的更多相关文章
- 这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理。
这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理. 01-java高级架构师设计-基础深入 J2SE深入讲解 Java多 ...
- java基础知识点整理
1.&和&&的区别? &:逻辑与(and),运算符两边的表达式均为true时,整个结果才为true. &&:短路与,如果第一个表达式为false时,第二 ...
- java异常知识点整理
异常处理机制:捕获异常(try-catch-finally)和声明抛弃异常(throw); 所有的异常类都直接或者间接地继承于Throwable类: java异常分为可查异常和不可查异常两种.可查异常 ...
- java重点知识点整理
隔壁班的帅哥给我的 1.1简述JAVA的语言特点 a语法简单,功能强大 b分布式与安全性 c与平台无关 d多线程 1.2什么是Java虚拟机?它包括哪几个部分? 解: Java 虚拟机 (JVM ) ...
- java前端知识点整理
1.jsp内置对象?作用? request :客户端请求,包含来自 GET/POST,提供了几个用于获取 cookie, 和 session 的方法 response :网页传回用户端的回应 page ...
- Java架构师必看,超详细的架构师知识点分享!
在Java程序员行业中,有不少Java开发人员的理想是成为一名优秀的Java架构师,Java架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...
- JAVA 150道笔试题知识点整理
JAVA 笔试题 整理了几天才整理的题目,都是在笔试或者面试碰到的,好好理解消化下,对你会有帮助,祝你找工作顺利,收到满意的 offer . 1.Java 基础知识 1.1 Java SE 语法 &a ...
- 阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
1.源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美.提高核心竞争力. 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华.知其然,并知其所以然.把知识变成自 ...
- [转]阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
1.源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美.提高核心竞争力. 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华.知其然,并知其所以然.把知识变成自 ...
随机推荐
- JIRA从8.1.0升级到8.3.0
1.程序目录 JIRA8.1.0 安装目录(以下简称原目录): /opt/atlassian/jira-8.1.0-bak JIRA8.1.0 HOME目录(以下简称原HOME): /var/atla ...
- GNE: 4行代码实现新闻类网站通用爬虫
GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容.标题.作者.发布时间.正文中的图片地址和正文所在的标签源代码.GNE在提 ...
- 1090 危险品装箱 (25分)C语言
集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里.比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸. 本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否 ...
- Java环境准备
电脑重装系统了,所以需要重新配置环境变量. 首先必备工具:jak.eclipse.maven.tomcat 首先配置Java运行环境. 在系统环境变量中新建变量JAVA_HOME:jdk所在的路径,P ...
- [ASP.NET Core 3框架揭秘] Options[2]: 配置选项的正确使用方式[下篇]
四.直接初始化Options对象 前面演示的几个实例具有一个共同的特征,即都采用配置系统来提供绑定Options对象的原始数据,实际上,Options框架具有一个完全独立的模型,可以称为Options ...
- Oracle基础之保留字和关键字
Oracle基础之保留字和关键字 在Oracle之中,有分为保留字和关键字,所谓关键字就是Oracle中有实际意义的,而保留字(比如DESC.ORDER等等)是Oracle中不能随便使用的,比如不能随 ...
- spring boot学习笔记(1)
一.构建springboot项目 可以通过idea的springboot initialization来创建, idea的功能很强大,可以自己选择需要集成的插件. 完整的项目结构是这样的: DemoA ...
- TensorFlow——训练模型的保存和载入的方法介绍
我们在训练好模型的时候,通常是要将模型进行保存的,以便于下次能够直接的将训练好的模型进行载入. 1.保存模型 首先需要建立一个saver,然后在session中通过saver的save即可将模型保存起 ...
- c++ 贪心讲解大礼包
贪心是什么? 它其实类似一种思想 就是总问题可以分成许多的子问题 子问题的最优解可以直接推出整个问题 它和动态规划有一定的不同之处 动态规划不能由子问题的最优解推出整个问题的最优解 所以你看都要有一个 ...
- cogs 826. [Tyvj Feb11] GF打dota 次短路详细原创讲解! dijkstra
826. [Tyvj Feb11] GF打dota ★★☆ 输入文件:dota.in 输出文件:dota.out 简单对比时间限制:1 s 内存限制:128 MB 众所周知,GF同学喜 ...