java web后台学习计划

一、基础学习(java)

  1. java基础语法

  2. 集合

  3. io

  4. 多线程

  5. 并发

  6. 反射

  7. 网络编程

    java不管你现在学的怎么样,到最后肯定要全部重新温习一遍的。大一下学期java没好好学的,到现在起码知道java的基本语法。java基础教程视频:链接:Java学习   提取码:4i51

二、数据库

关于 sql 方面:SQL 教程、MySQL 教程

我是了解了一些基础语法之后,就直接跟着视频的老师做一些表操作实战练习了,比如单表查询、多表查询等。我建议学 sql 切勿眼高手低,需多加练习,不要只看懂了就行,因为工作中写得一手简练的 sql 是非常重要的。在这里我说下我在项目一直秉承着 sql 语句是能避免多表查询就避免多表查询,能够分开多条语句就分开多条语句,因为这里涉及到多表查询性能和数据库扩展的问题。

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

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

三、Web入门------>在你们正式开始学习框架前,你们需要用Servlet写一个登录注册

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

关于 Http 协议,这篇文章就写得很清楚:Http协议

关于 Web 基础这方面数据推荐,我当时是看的是「Tomcat 与 Java Web 开发技术详解」,很详细地讲解了整个 Java Web 开发的技术知识点,但现在看来,我觉得里面讲的有一些技术确实有点老旧了,不过可以了解一下 Java Web 开发的历史也是不错的。所以在 Web 基础这方面我都是看传智播客讲的「超全面 Java Web 视频教程」,讲得很详细很生动,还有实战项目!

关于 JSP,你只要了解它其实就是一个 Servlet 就行了,关于它的一些标签用法,我认为可以直接忽略,因为现在互联网几乎没哪间公司还用 JSP,除了一些老旧的项目。现在都是流行前后端分离,单页应用,后端只做 API 接口的时代了,所以时间宝贵,把这些时间重点放在 Servlet 规范上面吧。

关于 Tomcat,它是一个 Web 容器,我们写的后端项目都要部署到Web容器才能运行,它其实是一个遵循 Http,通过 Socket 通信与客户端进行交互的服务端程序:Tomcat结构及处理请求过程

四、Web主流框架(SSM)--->你们这学期的重点,入门完成后,将它转化成SSM框架,最终写个web项目

Java Web 框架多如牛毛,等你有一定经验了,你也可以写一个 Web 框架,网上很多说 Spring、Struts2、Hibernate 是 Java 三架马车,我只想说,那是很久远的事情了,我严重不推荐 Struts2、Hibernate,相信我,一开始只需要上手 Spring、SpringMVC、Mybatis 就可以了,特别是 Spring 框架,其实 Spring 家族的框架都是很不错的。

但是提醒一点就是,千万不要沉迷于各种框架不能自拔,以会多种用法而沾沾自喜,导致知其然而不知其所以然。

Spring其核心思想就是 IOC 和 AOP:

谈谈对 Spring IOC 的理解

Spring 面向切面编程

SpringMVC 它的思想是全部请求统一用一个 Servlet 去做请求转发与控制,这个 Servlet 叫 DispatcherServlet:

SpringMVC 初始化过程

SpringMVC 处理请求过程

Mybatis 它可实现动态拼装 sql,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集:

mybatis 入门教程

Mybatis 深入浅出系列

关于Spring+springmvc+mybatis的整合,没什么好说的,自己去看

链接:https://pan.baidu.com/s/1yjVabtnhlMpcqkBPr8AcOQ 
提取码:qt2g

五、Web进阶(Spring Boot、spring Cloud)---->这一块根据自己喜好不强求,建议多看看,新技术正在向此发展

使用了 SSM 框架后,你会觉得框架也不过这么回事,如果你对 Spring 有过大概了解,你也会产生想写一个「山寨版」Spring 的心思了,一个轻量级 Web 框架主要具备以下功能:

  1. 可读取用户自定义配置文件,并以此来初始化框架;

  2. 具备 Bean 容器,管理项目的类的对象生命周期;

  3. 具备依赖注入,降低类之间的耦合性;

  4. 具备 AOP 功能,使项目可进行横向编程,可不改变原有代码的情况增加业务逻辑;

  5. 具备 MVC 框架模式。

其实除了 SSM 之外,Web 框架可谓是百家齐放,其中以 Spring 全家桶最为耀眼,在这里我极力推荐两个 Spring 家族框架:SpringBoot 和 SpringCloud。

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

SpringBoot 构建 web 项目

SpringBoot 自动化配置源码分析

自定义 SpringBoot Starter

spring-boot-starter-tutorial

SpringCloud 是一个微服务架构,能够将项目按照业务分成一个个微服务,每个微服务都可独立部署,服务之间互相协调。当一个项目越来越大时,随之而来的是越来越难以维护,此时将项目拆分成若干个微服务、单独维护、单独部署,也可以降低项目不同业务间的耦合度。推荐书籍「Spring Cloud 与 Docker 微服务架构实战」,这本书将 Docker 与微服务完美地结合在一起,堪称完美!

Spring Cloud 中文官网

史上最简单的 Spring Cloud 教程

有关于 Spring Cloud 的博客:

SpringCloud微服务架构之服务注册与发现

SpringCloud微服务架构之服务消费者

SpringCloud微服务架构之断路器

SpringCloud微服务架构之服务网关

六、你需要掌握的其他技术(尝试用git,maven,shiro对你的项目进行升级)

  • Git:世界上最先进的分布式版本控制系统,建议所有初学者从命令行开始使用 Git

Git 官网

最全 Git 教程

Git 的一些常用命令

  • Maven:一个用于构建项目的工具,将项目间的依赖通过 xml 完美地组织到一起,总之用了它你就不用去管jar包了

maven 的 pom.xml 文件详解

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

Linux 命令大全

最全的 SSH 连接远程终端教程

  • Docker:简直是项目部署神器啊,来不及解释了,看 Docker 系列博客,开启 Docker 之旅吧!推荐书籍「Docker 技术入门与实战」,中国首部 Docker 著作!

Docker 实战

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

redis 中文官网

redis 教程

  • shiro: 一个安全的框架,有了它什么认证权限都是浮云。

    shiro学习博客

    shiro视频教程

  • ajax :别以为它是前台的就不学,未来趋势是前后台分离伙计,不知道这个你怎么去传数据勒。

  • nginx:是一个异步框架的web服务器,这里不解释,反正你会用到的,直接放教程

还想要其他资源,自行去官网找社团资源搜索 梦翔官网

七、开发工具

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

  • Intellij IDEA:Java 开发最好的 IDE,这个是公认的,我一开始是用 Eclipse 的,后来用了 Intellij IDEA,才发现 Eclipse 就是一坨屎,所以我以过来人劝你们不要使用 Eclipse,直接 Intellij IDEA!

IntelliJ IDEA 使用教程

  • Chrome:Chrome浏览器还需要我解释吗?这还要教程的话你可以转行了

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

Postman 官网

八、项目实战

最后准备几个大型实战项目练练手吧。

链接:实战项目
提取码:yijw

java web后台学习路线相关推荐

  1. Java——Web后端学习路线

    文章目录 Java后端学习路线 第一部分: Java基础 第二部分: Java高级 第三部分: JavaWEB 第四部分: 主流框架和项目管理 第五部分: 分布式 微服务 并行架构 第六部分 : De ...

  2. Java 架构师学习路线

    Java 架构师学习路线 一. 框架源码专题 1. 应用框架Spring 1.1. Spring IOC源码剖析 1.2. Spring AOP 源码剖析 1.3. Spring MVC 源码剖析 1 ...

  3. 转载:一位资深程序员大牛给予Java初学者的学习路线建议

    一位资深程序员大牛给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来 ...

  4. Web前端学习路线分享,初学者不要错过!

    在技术岗中,前端开发一直是薪资比较高的岗位. ▲北京前端工程师月均薪20.7K(职友集) 前端技术的更新迭代,导致大部分技术人员跟不上.因此越来越多的人想转型做前端开发了.毕竟想要驰骋职场,想要拿年薪 ...

  5. (转)一位资深程序员大牛给予Java初学者的学习路线建议

    一位资深程序员大牛给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来 ...

  6. Java初学者的学习路线建议

    网络上看到过很多的java工程师的学习路线,内容很多,对于java初级人员来说,这种学习路线看的多了,就很容易混淆,最后并不能给自己一个深刻的认识和理解,我将一些重点,干货整理出来. 一.基础 Jav ...

  7. Java Web 后台中餐饮业报表系统开发实例

    本期葡萄城公开课,我们诚邀石家庄品智技术有限公司,高级软件工程师--刘永政先生,为大家在线分享餐饮业报表系统设计模式,以及在 HTML5 报表浏览器.Java 架构中跨平台使用ActiveReport ...

  8. 2021年web前端开发视频教程,自学web前端开发技术,全套web前端学习路线笔记

    2021年web前端开发视频教程,自学web前端开发技术,全套web前端学习路线笔记 [导读]:初学web前端的小伙伴经常会遇到的问题,1.没方法 2.没资源 3.没经验,不知道从何开始 ,代码哥(D ...

  9. java最全学习路线

    java最全学习路线 java核心基础 JDK安装配置 数据类型和运算符 流程控制 数组 类和对象 封装继承多态 抽象类和接口 集合框架 泛型 实用类 IO流 多线程 反射 网络编程 XML解析 Ja ...

  10. Java开发的学习路线

    Java开发的学习路线 前言 一.java入门级开发 1.Java基础加提升 2.Javaweb 3.Java框架 4.Java项目 二.夯实基础 1.Java基础 2.Java设计模式 3.Java ...

最新文章

  1. java培训分享:学习Java需要什么软件
  2. 江苏“超牛”女博导:16岁考入北大,跨专业读博,成为全球第4个获此奖项的学者!...
  3. 二十年后的回眸(2)——顺风顺水的前三年
  4. hell 12 21 filename重定向的含义和区别
  5. 蓝桥杯2016省赛真题-剪邮票(dfs)
  6. 0408~送给小伙伴的汉堡包
  7. Hello Blazor:(7)WebAssembly、Server模式你选哪种?小孩子才做选择!我用混合模式...
  8. c++矩阵类_面向对象有限元编程|单元类
  9. java基础—Properties集合
  10. 贪婪模式与非贪婪模式
  11. 十大开源游戏引擎深入比较
  12. java钟表动画_钟表动画的实现
  13. c语言复杂万年历带农历,c语言实现农历万年历(48页)-原创力文档
  14. 机器人java指南_Zmud新手机器人指南
  15. 《微型计算机原理与接口技术》复习笔记(二)
  16. 2018年全国专利代理机构发明授权排行榜(TOP100)
  17. Python实现分钟倒计时
  18. ES限流导致ES数据更新不及时问题
  19. 大数据技术之_01_Linux学习_01_linux的入门+VM和linux的安装+linux的目录结构+远程登录到linux服务器+vi和vim编辑器+开机、重启和用户登录注销+用户管理+用户组管理
  20. C++杂记(一)——常见知识总结

热门文章

  1. 阿里云系统盘扩容及数据盘分区、格式化分区、挂载、取消挂载
  2. 如何在万网注册域名及域名解析?
  3. java替换字符串_java string中的替换字符串
  4. 当面试官问你期望的薪资是多少的时候,他是这样回答的...
  5. php百度蜘蛛劫持,PHP模拟百度蜘蛛,伪造IP爬行网站,附源代码
  6. 教您在MathType输入三角形符号
  7. 计算机应用 一级学科,一级学科、二级学科,考研专业哪个包含了计算机考研方向...
  8. 小强统一认证中心-部署实例
  9. win7系统使用高版本node.js
  10. linux读usb蓝牙数据,嵌入式Linux下USB蓝牙设备驱动.pdf