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.源码分析专题 详细介绍源码中所用到的经典设计思想,看看大牛是如何写代码的,提升技术审美.提高核心竞争力. 帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华.知其然,并知其所以然.把知识变成自 ...
随机推荐
- myeclipse上进行tomcat远程调试
1.将Tomcat中的bin目录下的startup.bat启动脚本复制一份到本目录下并且修改名字为startup-debug.bat,然后打开startup-debug.bat文件 再startup- ...
- 记一次ftp错误
在一个ftp上,突然登不上 报错,使用浏览器登录,报此用户不是私密连接,然后使用服务器客户端登录尝试,错误信息如下: [root@test ~]# ftp *.*.*.* Connected to * ...
- FPGA之IO信号类型深入理解
在FPGA设计开发中,很多场合会遇到同一根信号既可以是输入信号,又可以是输出信号,即IO类型(Verilog定义成inout). 对于inout型的信号,我们既可以使用FPGA原语来实现,也可以使用V ...
- 从桌面到 Web -- 领域模型
让我们暂时告别一下 ASP.NET Core 先介绍一下这个虚拟项目.因为我的主要目的是通过一个项目,全面学习一下 ASP.NET Core,所以这个项目时一个很简单的,不具备实际应用价值的虚拟项目, ...
- [NoSQL] 从模型关系看 Mongodb 的选择理由
往期:Mongodb攻略 回顾 Mongodb 与关系型数据库的对应关系: MySQL MongoDB database(数据库) database(数据库) table(表) collectio ...
- Linux Centos7 环境搭建Docker部署Zookeeper分布式集群服务实战
Zookeeper完全分布式集群服务 准备好3台服务器: [x]A-> centos-helios:192.168.19.1 [x]B-> centos-hestia:192.168.19 ...
- Linux开发环境及应用—《第三周单元测验》《第四周单元测验》
三单元 1.vi处于文本输入状态时,按下下列哪个按键可以返回命令状态?C A.^ B.$ C.Esc D- 2.vi处于命令状态时,按下下列哪组按键可以把正在编辑的内容保存到磁盘上?D A.Ctrl- ...
- 1086 就不告诉你 (15分)C语言
做作业的时候,邻座的小盆友问你:"五乘以七等于多少?"你应该不失礼貌地微笑着告诉他:"五十三."本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积. 输入 ...
- Java并发-几种常见的锁
这几天在忙着投提前批内推,前面看的好多东西没有总结,正好这两天补上顺带复习一下 synchronized:Java之重型锁
- js如何下载后台传过来的base64文件
一.<a>标签的作用 相信大部分人都知道<a>链接再简单不过了,跳转嘛,跳转到另外一个页面,这谁不知道. 当然这这是一部分, <a> 标签定义超链接,用于从一个页面 ...