阶段3:Java Web开发基础


目标

面向薪资编程,学习实际工作要用的技术,并能 独立 做出一个具有完整功能的 Java Web 项目。

MySQL 数据库(1 周)

企业中大部分业务数据都是用关系型数据库存储的,因此数据库是后台开发同学的必备技能,其中 MySQL 数据库是目前的主流,也是面试时的重点。

知识

  • 基本概念
  • MySQL 搭建
  • SQL 语句编写
  • 约束
  • 索引
  • 事务
  • 设计数据库表
  • 性能优化

学习建议

其中,SQL 语句编写设计数据库表 这两个能力一定要有! 比如让你做一个学生管理系统,你要能想到需要哪些表,比如学生表、班级表;每个表需要哪些字段、字段类型。 这就要求大家多写 SQL、多根据实际的业务场景去练习设计能力。

资源

开发框架(2 个月)

Java 之所以能成为主流的企业开发语言,很大一部分原因是它完善的框架生态,用好框架,不仅能够大大提升开发效率,还能提高项目的稳定性、减少维护成本。 开发框架是后台开发工作中不可或缺的,也是面试考察的重点,一定要好好学。 不知道 Java 能做什么的朋友们,学完开发框架,就会有答案啦。

知识

  • Java Web
    • 描述:Java 网页应用开发基础
    • 前端基础
    • XML
    • JSON
    • Servlet
    • Filter
    • Listener
    • JSP
    • JSTL
    • Cookie
    • Session
  • Spring 5
    • 描述:Java 轻量级应用框架
    • IOC
    • AOP
    • 事务
  • SpringMVC
    • 描述:Java 轻量级 web 开发框架
    • 什么是 MVC?
    • 请求与响应
    • Restful API
    • 拦截器
    • 配置 
    • 执行过程
  • MyBatis
    • 描述:数据访问框架,操作数据库进行增删改查等操作
    • 增删改查
    • 全局配置
    • 动态 SQL
    • 缓存
    • 和其他框架的整合
    • 逆向工程
  • MyBatis Plus
    • 描述:Mybatis 的增强工具,能够简化开发、提高效率
    • 引入
    • 通用 CRUD
    • 条件构造器
    • 代码生成器
    • 插件扩展
    • 自定义全局操作
  • SpringBoot 2
    • 描述:简化 Spring 应用的初始搭建以及开发过程,提高效率
    • 常用注解
    • 资源整合
    • 高级特性
    • 本地热部署
  • Spring Security
    • 描述:Spring 的安全管理框架
    • 用户认证
    • 权限管理
  • Maven / Gradle
    • 描述:项目管理工具
    • 构建
    • 依赖管理
    • 插件
    • 配置
    • 子父工程

学习建议

由于技术较多,且框架之间存在一定的联系,因此建议大家看同一系列的视频教程(尚硅谷、狂神说等等都可以),以保证学习内容的连续以及体验上的一致。 学这些技术的时候,一定要多记笔记,并且跟着老师写代码。原理部分不要太过纠结,先以能跟着敲出代码、写出可运行的项目为主,有些东西做出来也能帮助你更好地理解理论。 学习顺序挺重要的,建议不要一上手就学 SpringBoot。只有先学习下自己整合框架的方法,才能帮你理解 SpringBoot 解决的问题,感受到它的方便和高效。 Maven / Gradle 当工具用就好,面试基本不问,跟着框架教程去用就行了,先不用花太多时间去深入学。

资源

视频(按顺序看)

开发规范(3 天)

开发不规范,同事两行泪。
开发规范是团队开发中必须遵守的,有利于提高项目的开发效率、降低维护成本。

知识

  1. 代码规范
    • 代码风格
    • 命名
    • 其他规则
  2. 提交规范

学习建议

简单过一遍大厂团队的规范手册就好了,以后做项目的时候能想起来的话就去使用,或者从书中、网上查规范,再去遵守。 项目做得多了,自然会养成好的习惯,不用刻意去记(毕竟每个团队规范也不完全相同,背了也没用)。

资源

Git(3 天)

此前大家可能听说过 GitHub,一流的代码开源托管平台。 Git 和它可不一样,是一个版本控制工具,可以更好地管理和共享项目代码,比如把自己的代码传到 GitHub 上、或者从远程下载。 无论自己做项目、还是团队开发,Git 都是现在不可或缺的神器。

知识

  • 工作区
  • 分支
  • 代码提交、推送、拉取、回退、重置
  • 分支操作
  • 代码合并、解决冲突
  • 标签
  • cherry-pick

学习建议

每个命令跟着敲一遍,有个大致的印象,会用即可,用的多了自然熟悉了。

资源

Linux(2 周)

企业中的很多前后台项目都是部署在 Linux 服务器上的,因此很有必要熟悉 Linux 的操作和脚本的编写。后面学微服务、学架构都是在多台。

知识

  • Linux 系统安装
  • 环境变量
  • 文件管理
  • 用户管理
  • 内存管理
  • 磁盘管理
  • 进程管理
  • 网络管理
  • 软件包管理
  • 服务管理
  • 日志管理
  • Linux 内核
  • 常用命令
  • 常用环境搭建
  • Shell 脚本编程
  • VIM 的使用

学习建议

多动手实践,建议自己购买一台云服务器,并且在本地搭建 Linux 虚拟机环境。 一定要自己从 0 开始手敲命令安装软件、部署服务,熟悉整个项目的上线流程。 每个命令至少要跟着敲一遍,了解它们的作用,并通过自然地练习,熟悉常用的 Linux 命令。 记不住没关系,用文档查就行了。 先会用,再理解。

资源


评论
评论
  目录