Java后端开发学习路线

编程基础

Java语言

  • 语言基础

  • JVM

    • 类加载机制
    • 字节码执行机制
    • jvm内存模型
    • GC垃圾回收
    • jvm性能监控与故障定位
    • jvm调优
  • 并发/多线程

    • 并发编程基础
    • 线程池
    • 并发容器
    • 原子类
    • juc并发工具类

数据结构和算法

  • 数据结构

    • 字符串
    • 数组
    • 链表
    • 二叉树
    • 堆、栈、队列
    • 哈希
  • 算法

    • 查找
    • 排序
    • 贪心
    • 分治
    • 动态规划
    • 回溯

计算机网络

  • ARP协议
  • IP/ICMP协议
  • TCP/UDP协议
  • DNS/HTTP/HTTPS协议
  • Session/Cookie

数据库/SQL

  • SQL语句书写
  • SQL语句优化
  • 事务以及隔离级别
  • 索引

操作系统

  • 进程/线程
  • 并发/锁
  • 内存管理和调度
  • I/O原理

设计模式

  • 单例
  • 工厂
  • 代理
  • 策略
  • 模板方法
  • 观察者
  • 适配器
  • 责任链
  • 建造者

开发工具

集成开发环境

  • Eclipse
  • IDEA
  • VSCode

Linux系统

  • Linux常用命令
  • 基本Shell脚本

代码管理工具

  • Git
  • SVN

项目管理/构建工具

  • Maven
  • Gradle

应用框架

后端

  • Spring家族

    • Spring

      • IOC
      • AOP
    • SpringMVC

    • SpringBoot

      • 自动配置、开箱即用

      • 整合Web

      • 整合数据库(事务问题)

      • 整合权限

        • Shiro
        • SpringSecurity
      • 整合各种中间件

        • 缓存
        • MQ
        • RPC框架
        • NIO框架
        • 等。。。
  • 服务器软件

    • Web服务器

      • Nginx
    • 应用服务器

      • Tomcat
      • Jetty
      • Undertow
  • 中间件

    • 缓存

      • Redis

        • 5大数据类型
        • 事务
        • 消息通知
        • 管道
        • 持久化
        • 集群
      • memcache

    • 消息队列

      • RocketMQ
      • RabbitMQ
      • Kafka
    • RPC架构

      • Dubbo
      • GRPC
      • Thrift
      • SpringCloud
      • Netty
  • 数据库

    • ORM层框架

      • MyBatis
      • Hibernate
      • JPA
    • 连接池

      • Druid
      • HikariCP
      • C3P0
    • 分库分表

      • MyCat
      • Sharding-JDBC
      • Sharding-Sphere
  • 搜索引擎

    • Solr
    • ElasticSearch
  • 分布式/微服务

    • 服务发现/注册

      • Eureka
      • Consul
      • Zookeeper
      • Nacos
    • 网关

      • Zuul
      • Gateway
    • 服务调用(负载均衡)

      • Ribbon
      • Feign
    • 熔断/降级

      • Hystrix
    • 配置中心

      • Config
      • Apollo
      • Nacos
    • 认证和鉴权

      • Shiro
      • SpringSecurity
      • OAuth2
      • SSO
    • 分布式事务

      • JTA接口

        • Atomikos组件
      • 2PC、3PC

      • XA模式

      • TCC模式

        • tcc-transaction
        • ByteTCC
        • EasyTransaction
        • Seata
      • SAGA模式

        • ServiceComb
        • Seata
      • LCN模式

        • tx-lcn
    • 任务调度

      • Quartz
      • Elastic-Job
    • 链路追踪与监控

      • Zipkin
      • Sleuth
      • Skywalking
    • 日志分析与监控

      • ELK

        • ElasticSearch
        • Logstash
        • Kibana
    • 虚拟化/容器化

      • 容器技术

        • Docker
      • 容器编排技术

        • Kubernetes
        • Swarm

前端

  • 基础套餐

    • 三大件

      • HTML
      • Javascript
      • CSS
    • 基础库

      • Jquery
      • Ajax
  • 模板框架

    • JSP/JSTL
    • Thymeleaf
    • FreeMarker
  • 组件化框架

    • Node
    • VUE
    • React
    • Angular

运维知识

Web服务器

  • Nginx

应用服务器

  • Tomcat
  • Jetty
  • Undertow

CDN加速

持续集成/持续发布

  • Jenkins

代码质量检查

  • sonar

日志收集/分析

  • ELK

成神之路

  • 徒手撕源码

  • 光脚造轮子

  • 闭眼深优化

  • 吊打面试官

平稳降落

  • 调节心态、注意健康

  • 虚心学习

  • 持之以恒

Java后端总结的更多相关文章

  1. [转载]我的Java后端书架 (2016年暖冬4.0版)

      [转载]我的Java后端书架 (2016年暖冬4.0版) ps:最近正在初学Java,有一些其他语言的底子,但是还是要好好看书,好好练习,网上找了好久,都没有这份书单来的实用,特意转载过来,方便以 ...

  2. 招聘前端、Java后端开发、测试、Mysql DBA

    公司介绍: http://www.lagou.com/gongsi/43095.html http://www.yamichu.com 简历发到: zhuye@yamichu.com 招聘职位: JA ...

  3. java后端制作MD5加密

    由于一次业务的需要,我制作了一次密码的修改子业务. 当用户忘记密码的情况下,我需要动态的发给他一个6位的随机密码,通过即时通,短信,微信等.并同时修改数据库中的原密码为这6位的随机密码.让用户再去修改 ...

  4. java后端书籍推荐

    书架主要针对Java后端开发. 3.0版把一些后来买的.看的书添补进来,又或删掉或降级一些后来没有再翻开过的书. 更偏爱那些能用简短流畅的话,把少壮不努力的程序员所需的基础补回来的薄书,而有些教课书可 ...

  5. 我的Java后端书架 (2016年暮春3.0版)

      04月 24, 2016 | Filed under 技术 http://calvin1978.blogcn.com/articles/javabookshelf.html 书架主要针对Java后 ...

  6. Java后端书架

    本书架主要针对Java后端开发与架构. 更新记录:4.0版把第五部份-具体技术的书整块拿掉了.<TCP/IP详解 卷1:协议>出到了第二版,增加<SRE:Google运维解密> ...

  7. Java后端开发

    Java后端开发 名称 内容 基本框架 Spring.Mybatis Linux服务器   数据库优化   消息服务 rabbitMQ.activeMq rocketMq 缓存服务 memcached ...

  8. 我的Java后端书架2016年暮春3.0版(转)

    书架主要针对Java后端开发. 3.0版把一些后来买的.看的书添补进来,又或删掉或降级一些后来没有再翻开过的书. 更偏爱那些能用简短流畅的话,把少壮不努力的程序员所需的基础补回来的薄书,而有些教课书可 ...

  9. 从app上传图片到php,再上传到java后端服务器的方法一览

    在现在的网络开发中,上传图片类的需求实在是太普通不过了,但是对于怎么样做到上传图片,对于刚开始建立项目的时候,还是有点不知所措的.也许有幸,我们做的项目是之前已经有人写过类似的用例了,那么我们只需要依 ...

  10. java后端程序员1年工作经验总结

    java后端1年经验和技术总结(1) 1.引言 毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西.这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为 ...

随机推荐

  1. 前端基础:”天龙八步“细说浏览器输入URL后发生了什么

    参考:https://www.xuecaijie.com/it/157.html#1Q64p5DeC8dKFF 本文摘要: 1.DNS域名解析: 2.建立TCP连接: 3.发送HTTP请求: 4.服务 ...

  2. LeetCode 81,在不满足二分的数组内使用二分法 II

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode专题第50篇文章,我们来聊聊LeetCode中的81题Search in Rotated Sorted ArrayII ...

  3. git bash中提示 bash:node: command not found

    昨天小伙伴私信,git bash以及windows 的cmd命令行下均无法运行node npm. 究其原因是环境变量的问题.解决步骤: 1>在"此电脑"中右击,选择" ...

  4. Java实现 第十一届蓝桥杯——超级胶水(渴望有题目的大佬能给小编提供一下题目,讨论群:99979568)

    PS: 好久没写过算法题了,总感觉自己写的思路没问题,但是结果就是不对,希望哪位大佬有时间能给找找问题 超级胶水 小明有n颗石子,按顺序摆成一排,他准备用胶水将这些石子黏在一起. 梅克什字有自己的重量 ...

  5. 洛谷 P4910 帕秋莉的手环

    题意 多组数据,给出一个环,要求不能有连续的\(1\),求出满足条件的方案数 \(1\le T \le 10, 1\le n \le 10^{18}\) 思路 20pts 暴力枚举(不会写 60pts ...

  6. 51nod1524 最大子段和V2

    题干 N个整数组成的序列a[1],a[2],a[3],-,a[n],你可以对数组中的一对元素进行交换,并且交换后求a[1]至a[n]的最大子段和,所能得到的结果是所有交换中最大的.当所给的整数均为负数 ...

  7. 石子合并——区间dp

    石子合并(3种变形) <1> 题目: 有N堆石子排成一排(n<=100),现要将石子有次序地合并成一堆,规定每次只能选相邻的两堆合并成一堆,并将新的一堆的石子数,记为改次合并的得分, ...

  8. SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(五): 数据表设计、使用 jwt、redis、sms 工具类完善注册登录逻辑

    (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y-h/p ...

  9. NW.js Mac App 签名公证流程

    使用 Developer ID 为 Mac 软件签名 - Apple Developer 在MacOS 10.15之前,应用如果没有签名(signature),那么首次打开时就会弹出"无法验 ...

  10. 谈谈你对 TCP 三次握手和四次挥手的理解

    TCP三次握手: 1.客户端发送syn包到服务器,等待服务器确认接收. 2.服务器确认接收syn包并确认客户的syn,并发送回来一个syn+ack的包给客户端. 3.客户端确认接收服务器的syn+ac ...