Java学习路线及阿里Java技术栈

本文转载自:Java知识图谱(附:阿里Java学习计划)

本文主要描绘了Java基础学习过程,给出Java知识结构图,以及阿里Java岗学习计划,对Java学习爱好者、准备及将要从事Java开发方面的同学大有裨益。

温馨提示:

由于CSDN对图片的压缩,导致图片观看效果不理想,建议大家通过右键“在新标签页打开图片”进行观看或直接把图片下载下来观看。

JVM

  1. 内存模型(内存分为几部分?堆溢出、栈溢出原因及实例?线上如何排查?)
  2. 类加载机制
  3. 垃圾回收

Java基础

  • 什么是接口?什么是抽象类?区别是什么?
  • 什么是序列化?
  • 网络通信过程及实践
  • 什么是线程?java线程池运行过程及实践(Executors)
  • java反射机制实践

设计模式

  • 单例模式
  • 原型模式
  • 动态代理模式

Spring

  • 什么是IOC
  • 什么是AOP
  • spring事务管理:模板事务跟标注事务的区别及运理原理,什么是事务的传播机制

数据库

  • 锁机制:锁的作用是什么,什么是乐观锁,什么是悲观锁,怎么实现 ?
  • 索引:熟悉联合索引及sql执行计划

  1. java内存模型
    学习内容:学习java内存模型
    实验方法:写一段代码触发内存溢出,分别触发栈内存和堆内存溢出,写一段代码导致持久代溢出。使用工具查看内存占用情况,学会如何分析内存溢出。

  2. 多线程
    学习内容:多线程的NIO实现,IO实现(两种实现,阻塞,非阻塞)
    试验方法:写一段代码实现多人聊天室,包括双人聊天和多人聊天。

  3. 动态代理(工厂模式)
    (1)学习内容:JDK动态代理实现,
    试验方法:一个方法的前置拦截,后置拦截,前置打印获取类名,方法名字,调用参数打印。后置打印返回结果(返回的结果是一个复杂的类)。
    (2)学习内容:spring框架
    试验方法:对某一包下,所有类的方法做切面,打印日志。

  4. 反射机制
    学习内容:java的反射机制
    试验方法:写一段程序,调用一个Bean下实现了标注(“autocall”)的方法

  5. 配置数据源
    学习内容:配置数据源
    实验方法:自己建一张表,引入数据库连接池,自动插入20万条数据,创建联合索引,验证走索引和不走索引的耗时,查看sql是否走索引,学会查看查询,计划实验,用标注式事务,编程式事务(查看编程式事务源码实现);用乐观锁和悲观锁实现数据更新。


java知识结构

阿里学习计划-5154784

阿里学习计划2

学习需要知道:

1、是什么
2、解决了什么问题

3、怎么实现的