java学习路径

第一阶段(看自己能不能学走)
    开发环境的搭建(安上嘴)
    开发工具的安装和使用
    jdk
    IDEA/vscode
    环境变量的设置
    基础的电脑命令行命令
    Java的语言基础(学会说话,推荐看视频,刘意或者毕向东)
    几个重要的知识点
    面向对象(主要是理解思想,多语言通用的)
    集合
    IO操作
    异常处理
    基础的多线程和并发(只做了解即可)
    注解
    反射(后面会复习)
    基础的数据结构和算法(优先是数据结构,基础的这些东西都是能学会的不是很多)
    debug(必学会 ,逐步调试,定位问题)
    整合 做点控制台小程序

第二阶段
    前端基础知识(除非你不做web开发,否则必学,比如游戏开发,桌面软件开发)
    JavaScript
    html
    css
    计算机网络基础(为后面的web开发做基础)
    网络通信协议
    HTTP/HTTPS
    TCP/IP/UDP/SMTP/FTP
    IP地址
    常见的响应格式和状态码
    Json(必学会)
    xml
    1xx 2xx 3xx
    数据库基础知识
    关系型数据库
    mysql(优先)
    Oracle
    非关系型
    MongoDB
    服务器基础知识
    linux基础操作
    nginx基础知识
    Java部署容器
    tomcat
    jetty
    Javaweb基础知识
    servlet/jsp(jsp了解即可)
    jdbc
    数据库连接
    crud操作
    数据源/连接池
    ajax通信
    restful风格接口
    理解服务端渲染和spa单页面
    session/cookie
    filter/listener
    整合做点原生Javaweb项目


#第三阶段(成为码农)
    为框架学习打基础
    复习反射(一定要理解)
    常用的设计模式
    maven
    Git/Svn
    SSM
    spring IOC/AOP
    springmvc
    mybatis
    常见的页面模板
    freemaker
    thymeleaf
    springboot
    springdatajpa
    整合下面的常见框架,并且可以单独使用他们
    日志处理
    log4j
    logback
    常见的缓存
    redis(重要)
    memcached
    常见的权限框架和授权认证
    shiro
    spring security
    jwt
    oauth2
    sso单点登录
    常见的消息队列
    rocketmq
    rabbitmq
    kafka
    常见的搜索引擎
    elk(同样可以做日志管理,重要)
    elasticsearch
    logstash
    kibana
    solr
    lucene
    容器和持续部署
    docker
    k8s
    jenkins
    sonar
    任务
    quartz
    elastic-job
    分库分表
    mycat
    sharding-jdbc
    多线程和并发进阶
    线程池
    JUC
    锁
    JVM
    调优
    内存模型
    垃圾回收
    错误定位
    字节码
    NIO
    netty
    整合做点项目(github找项目,同时培训班最后一个项目练手)
    
    
#第四阶段(简单提一下,学到这里自己肯定有思路了)
    热门的分布式方案
    Dubbo zookeeper
    spring cloud alibaba
    springcloud全家桶
    nodejs(混合微服务)
    分布式事务
    大数据相关的
    hadoop
    spark


#怎么学
    前期推荐看视屏(容易理解)
    跑完一遍基础后,可以看对应的书籍加深理解(更全面)
    前期多做项目,后期多思考,看别人的项目源码
    项目做熟悉以后,尝试阅读源码
    持续跟进新技术的发展,框架新版本的跟进
原文地址:https://www.cnblogs.com/cambra/p/13716309.html