1. Java 就业方向


2. Java 应用学习路线

web 后端开发属于当前主流的 B/S (浏览器/服务器)架构,需求量较大,但学习后端开发的人非常多(初级渣比较多),后端开发主要难于系统架构以及业务逻辑上。目前大型企业应用后台均使用 Java 语言开发,如淘宝等。当前使用主流框架为 SpringBoot。Java 自身存在三个规范,即 JavaSE(Java桌面应用程序开发)、JavaME(Java手机端开发)、JavaEE(Java企业级开发),其中 JavaME 早已被时代淘汰,取而代之的是 Android 开发,而 JavaSE 也很少用来进行桌面应用程序开发。当前 JavaEE 开发仍然是时代主流,且未来一段时间不会被第二种语言取代,因此以下路线均针对于 web 后端开发。

2.1 JavaSE 学习路线

以下泛指 Java基础,主要内容如下图所示。

2.2 前端基础学习

前后端开发自身是从:前后端耦合(使用 JSP、Thyemleaf、Freemarker等模板引擎)、前后端半分离(Ajax 异步请求 json 数据)、前后端完全分离(Node.js等),在我们学习的过程中,开发一些常用的前端页面是难以避免的,因此学习前端三大骨架是有必要的(不然一个简单的网页都写不出来)。
推荐视频:各类培训班视频

2.3 数据库基础学习

数据库是 web 后端开发的立身之本,一般大型公司都有专门的 DBA(数据库开发工程师)来进行数据库的管理,但是后端开发人员也必须完全掌握数据库。并且后端开发 95% 都是在做 CRUD(即对数据的增删改查),而操作的就是数据库中存储的数据,数据库的性能和优化也是需要注意的重点。

2.4 JavaWeb 学习路线

JavaWeb 主要学习 web 后端开发的基础知识和规范,当前主流框架都是在 JavaWeb 的基础上进行封装再封装,有扎实的基础之后,使用框架才会得心应手。

2.5 主流框架学习

当前主流应用框架为:SSM(即Spring、SpringMVC、MyBatis整合),由于时代更新,目前使用的为 SpringBoot 框架,但 SpringBoot 仍然以 Spring 和 SpringMVC 为核心。

2.6 其它应用

在我们开发 web 应用时,很多组件的使用是必不可少的,web 应用承受流量越大,系统架构难度呈指数难度增长,如 12306 的后台架构是当下全球最牛x的后台,没有之一,这同样归功于下面某些组件。

3. Java 找工作学习路线

以上是 Java 应用层面的学习路线,但是在应届秋招/春招时,单纯有上述会用经验是不足以通过面试的,在面试时,只是会用/了解一门技术的话,在面试官眼里是等于不会用的。面试中更看重的是原理层面的理解深度,比如在 Java 基础中,Java 字符串 String 使用 “+” 拼接字符串,那么使用 StringBuilder/StringBuffer 可以获取一样的结果,那我们什么时候用 String 的拼接,什么时候用 StringBuilder 呢?或者再举个例子,HashMap 和 ConcurrentHashMap 有什么区别呢?这些原理性的知识考察的不是死记硬背,而是在后面工作中,出现了 BUG 可以通过你的理解快速定位可能是哪里出现了问题,而不是随缘找原因。而数据结构和算法的知识也是应届生必定会考察的一个知识,写代码非常讲究逻辑思考能力,具备一定的算法能力,可以在逻辑上简化代码复杂度,让程序的运行速度更快。

3.1 数据结构与算法