大部份同学都不太了解 Java 后端或者说今后应聘Java/J2EE开发工程师究竟需要学什么,究竟要从哪里学起,哪些是主流的 Java相关技术等等,导致想学,但又很迷茫,不知从何下手。

以过来人的经历,写在这篇文章里,附加各类认为相对较好的视频资源等,供你们的参考。

1、Java 基础

Java 是一门纯粹的面向对象的编程语言,所以除了基础语法之外,必须得弄懂它的 oop 特性:封装、继承、多态。此外还有泛型、反射的特性,很多框架的技术都依赖它,比如 Spring 核心的 Ioc 和 AOP,都用到了反射,而且 Java 自身的动态代理也是利用反射实现的。

此外还有 Java 一些标准库也是非常常见,比如集合、I/O、并发,几乎在 Web 开发中无处不在,也是面试经常会被问到的,所以先打好这些基础。

另外还有 Java8、9、10、11、12、13等的一些新特性,也要重点关注,比如 Lambda表达式、集合的Stream流操作、模块化、局部变量类型推断、新API:List,Map,Set、Switch表达式等等。

关于视频:

https://www.bilibili.com/video/BV1Qb411g7cz

https://www.bilibili.com/video/BV1L7411N77n

关于书籍:Java 界的圣经「Java 编程思想」,待基础入门之后面试求职之前再细啃该书。最新版的中文翻译:地址

2、数据库基础

关于 标准SQL 方面:SQL 教程、MySQL 教程

掌握基本SQL操作,比如插入数据、更新数据、单表查询、多表查询等。

https://www.bilibili.com/video/BV1xW411u7ax

https://www.bilibili.com/video/BV1d7411K7Rg

https://www.bilibili.com/video/BV1CJ41117c6

关于 JDBC 方面:JDBC 教程、 JDBC 获取连接对象源码分析

需要弄懂 JDBC API 的用法,其实它只是一组规范接口,所有数据库驱动只要实现了 JDBC,那么我们就可以通过标准的 API 调用相应的驱动,完全不用知道驱动是怎么实现的,这就是面向接口编程的好处。

https://www.bilibili.com/video/BV1eJ411c7rf

3、Web 基础

曾经开源中国创始人红薯写了一篇文章「初学 Java Web 开发,请远离各种框架,从 Servlet 开发」,在如今 Java 开发中,很多开发者只知道怎么使用框架,但根本不懂 Web 的一些知识点,其实框架很多,但都基本是一个套路,所以在你学习任何框架前,请把 Web 基础打好,把 Web 基础打好了,看框架真的是如鱼得水。

视频地址:链接

4、Web 主流框架

Java Web 框架多如牛毛,老旧点的SSH(Spring、Struts2、Hibernate) 是 Java Web框架的三架马车。新点的SSM(Spring、SpringMVC、Mybatis) ,当然还有 Spring 全家桶,目前来说Spring 全家桶的框架相对来说更好点。

https://www.bilibili.com/video/BV1mE411X7yp

https://www.bilibili.com/video/BV1Va4y1Y7gS

https://www.bilibili.com/video/BV1fk4y1d75N

5、Web 框架进阶

除了 SSM 之外,Web 框架可谓是百家齐放,其中以 Spring 全家桶最为耀眼,在这之后就是:SpringBoot 和 SpringCloud。

SpringBoot 弥补了 Spring 配置上的缺点,再也不用为繁杂的 xml 费劲精力了,堪称是 Java 后端开发的颠覆者,推荐书籍「Java EE 开发的颠覆者:SpringBoot实战」

https://www.bilibili.com/video/BV1Et411Y7tQ

https://www.bilibili.com/video/BV1JE411q7KN

SpringCloud 是一个微服务架构,能够将项目按照业务分成一个个微服务,每个微服务都可独立部署,服务之间互相协调。

当一个项目越来越大时,随之而来的是越来越难以维护,此时将项目拆分成若干个微服务、单独维护、单独部署,也可以降低项目不同业务间的耦合度。

https://www.bilibili.com/video/BV18E411x7eT

6、其它技术

Redis:一个高性能的 key-value 数据库,当有并发量很高的请求时,将数据缓存在 Redis 中,将提高服务器的响应性能,大大减轻数据库的压力。

Git:分布式版本控制系统,建议从命令行开始使用 Git!进阶学习GitLab

Maven:一个用于构建项目的工具,将项目间的依赖通过 xml 完美地组织到一起,可通过编译插件将项目编译成字节码文件。类似的 Gradle 可以学习。

Linux:至少要求常用的命令会用,能够在 linux 环境下部署项目。

7、开发工具

工欲善其事,必先利其器,以下是一些开发工具:

Intellij IDEA:Java 开发最好用也是目前最多人使用的 IDE,大部份学校教学及以往视频使用的是 Eclipse 也没有问题。

Iterm2:macOS 最好用的终端!

Chrome:浏览器使用 Chrome,有强大的各类插件支持!

Postman:很好用的一个接口调试工具。

Visual Studio Code(简称VSCode),是微软出的一款轻量级代码编辑器,免费、开源而且功能强大。它支持几乎所有主流的程序语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,特别是前端开发绝大多数人在使用。

java sql编辑器_Java工程师完整学习路线相关推荐

  1. Java 开发 (实习生/应届生) 完整学习路线和规划,希望能够帮到屏幕前迷茫的你

    这是来自一个没有团队,没有机构,仅仅是一个热爱Java开发的带学生UP主完成的学习路线,所有的资料.源码可以直接下载. 各位小伙伴大家好,也许这是你们第一次见到我,我和你一样,曾也是一个对于未来充满迷 ...

  2. java web 图灵_java架构师学习路线-Web架构的理解

    图灵学院  java架构师学习路线-Web架构的理解 Web体系结构可以理解为具有三种,一种是仅JSP页面,即所有逻辑,业务处理和页面代码都在JSP上.在执行简单而无关紧要的程序时可以使用此方法.它速 ...

  3. java 心跳框架_java架构师学习路线-如何使用Netty实现心跳检测

    心跳检测是Socket通信经常使用的保证网络连接正常的技术.那么如何实现心跳检测呢?图灵学院今天着重来为大家介绍一下如何使用Netty实现心跳检测. 1.新建java工程,并导入netty使用的jar ...

  4. 一个C/C++开发工程师的学习路线

    来源连接:https://blog.csdn.net/TeFuirnever/article/details/103388058?depth_1-utm_source=distribute.pc_re ...

  5. 【资源】一个C/C++开发工程师的学习路线(已经无路可退,唯有逆风飞翔)【内附资源页】

    知乎同步地址:https://zhuanlan.zhihu.com/p/96165809 声明: 1)该文章整理自网上的大牛和专家无私奉献的资料,具体引用的资料请看参考文献. 2)本文仅供学术交流,非 ...

  6. 奉劝那些刚参加工作的学弟学妹们:要想进大厂,这些并发编程知识是你必须要掌握的!完整学习路线!!(建议收藏)

    大家好,我是冰河~~ 今天给大家带来一篇完整的并发编程学习路线,这应该是全网最全的并发编程学习路线了吧,希望能够为各位小伙伴们带来实质性的帮助. 如果这篇文章对大家有点帮助,小伙伴们点赞,收藏,评论, ...

  7. 游戏开发完整学习路线之美

    游戏开发完整学习路线(各个版本都有) 转载自http://www.cnblogs.com/majianchao/p/6523455.html 在软件开发中,游戏开发这个方向看起来目标很明确,但其实是个 ...

  8. C++服务器开发完整学习路线

    C++服务器开发完整学习路线(含免费学习资料下载地址) 摘自:https://mp.weixin.qq.com/s/vkvQM8d78HBgJbUvY1KcLw 我看了下这里面高级阶段的nginx  ...

  9. Java自学需要学多久?学习路线是怎样的?别慌这里都整理好了

    学java一般要多久? 因人而异,例如一个零基础的小白自学java,每天学习8个小时来算,而且在有学习资料的基础上,每天学习,从零到找到工作,起码要半年起步,而且还要有项目经验,否则是不会有公司要你的 ...

最新文章

  1. 2022-2028年中国石化行业节能减排投资分析及前景预测报告
  2. 7 orm 有批量更新_ORM之SQLAlchemy
  3. Angular 2 DI系统中 函数forwardRef 的作用?
  4. bzoj2597: [Wc2007]剪刀石头布
  5. 华为怎么安装服务器系统版本,服务器怎么安装操作系统版本
  6. Spring 3.1和Hibernate的持久层
  7. Oracle 19c 新特性:ADG的自动DML重定向增强读写分离
  8. linux cximage动态库,64位Linux编译cximage手记
  9. 华为云GaussDB技术创新持续发力,荣膺DTCC2021创新大奖
  10. python数据分析实验报告_数据聚合
  11. 海洋女神亲身体验灵翼龙岛飞行任务--壮志凌云:空军指挥官穆维里克--完成后的诀窍总结...
  12. requestSubscribeMessage:fail can only be invoked by user TAP gesture 微信小程序调起订阅消息失败
  13. 免费修复受损的mp4视频文件
  14. 求二叉树中的第一条最长路径长度,并输出最长路径上的节点
  15. 图片上传 axios
  16. Contest1065 - 第四届“图灵杯”NEUQ-ACM程序设计竞赛(个人赛)A蔡老板的会议
  17. 解决Excel 2016无法直接打开文件的问题
  18. 将edge浏览器设置为IE浏览器
  19. 操作系统-经典同步例题
  20. ChatGPT应用场景与工具推荐

热门文章

  1. SIGGRAPH2018黑科技:开源语义软分割改进图像编辑
  2. jni和java之间字符串的转换
  3. vCenter- vcsa6.7/7.0重置root密码
  4. 最新架构amd服务器cpu,AMD Zen架构处理器全新性能配置介绍
  5. excel 粘贴了HTML怎么删掉,Excel怎么删除网页上复制删不掉的文本框
  6. ORACLE姚翔,- oalib
  7. tomcat升级_「shell脚本」懒人运维之自动升级tomcat应用(war包)
  8. python class类_Python——入门级(class类)
  9. react http请求_通过Webpack全局配置开发环境和多种生产环境的请求地址
  10. 3dmax挤出制作窗花_给想学3dmax,又不知如何快速入手的你 新手学习3dmax的建议...