当前位置:   article > 正文

Spring MVC 实战手册

宁楠java简历
课程亮点
  • 由浅入深,从基本操作到剖析底层原理
  • 实践为主,语言通俗易懂、快速上手
  • 整合 Spring MVC、NoSQL,实现前后端分离
  • 附赠 Nginx 搭建 Tomcat 集群实现负载均衡
专家推荐

本课程内容由浅入深、知识点全面,同时结合了作者丰富的实战经验,行文流畅,是不可多得的学习资料。

——尹吉欢,《Spring Cloud 微服务:全栈技术与案例解析》一书作者,极部落 Java 开发者大会分享嘉宾

课程背景

Spring MVC 是一款基于动作的 MVC 框架,作为当下主流的框架之一,其具有可配置、非侵入的特点,代码复用性高,可定制绑定模型数据和验证器,是从事 Java 后端开发人员应该要掌握的技术。

本课程内容从如何使用 Spring MVC 进行实际开发的角度出发,通过剖析底层原理 + 实际案例的方式详细讲解了 Spring MVC 的常用技能点,以达到掌握底层原理的同时能够快速上手进行开发的目的。

作者介绍

宁楠,资深 Java 开发工程师、技术公众号原创博主、知识星球常驻嘉宾、讲师。曾就职于某大型互联网公司,历任高级工程师、技术总监、创业公司 CTO;曾参与研发手游欢乐碰碰熊后台数据管理系统、某医疗系统区域数据采集交换平台等项目,对 Java Web 编程有着丰富的经验和独到的见解,并热衷于分享编程干货,著作《Java 极简编程》一书即将出版。

课程大纲

enter image description here

课程内容
开篇词 | 如何快速上手 MVC 框架

大家好,我是宁楠,资深 Java 开发工程师,曾就职于某大型互联网公司,历任高级工程师、技术总监、创业公司 CTO,对 Java Web 编程有着丰富的经验和独到的见解。

课程背景

首先问大家一个问题,我们不断学习新技术、不断提高自己能力的目的是什么?可能有一小撮人单纯追求技术带来的快乐,但是以我个人的观察经验,大部分人是为了找到更好的工作、拿到更高的薪资。

既然是这样,我们在选择学习一门技术的时候,先要考虑的是这门技术的市场需求量如何,以及企业需要什么技术,然后再判断这门技术值不值得花精力学习。因此,请记住一句话,尽量只学实用的技术。

1. 关于 Spring MVC 技术的招聘信息

打开 Boss 直聘、智联招聘等网站,搜索 Java 相关的岗位,大部分招聘信息的任职要求如下图所示:

enter image description here

enter image description here

enter image description here

上面几则招聘信息表明,如果去应聘 Java 开发工程师的岗位,无论是初级开发师,还是有一定经验的中高级开发师,多多少少需要掌握 Spring MVC 框架技术。在当下互联网技术日新月异的环境下,大部分企业还在用 Spring MVC 框架进行项目研发。由此看来,我们不能仅仅掌握 Spring MVC 的基本用法就可以了,更需要深入了解它,以便更好地适应企业的开发需求,同时提升自我价值。

2. Spring MVC 的重要性

作为当前流行的 MVC 框架,Spring MVC 框架的优点就不再赘述了,同时它是 Spring 框架体系的一个分支产品,以 Spring IoC 为基础,并利用容器的特性来简化其配置。Spring 是 Java 开发领域非常重要的框架,绝大部分的企业级应用程序都使用 Spring 来构建体系,而 Spring MVC 相当于 Spring 的一个子模块,可以很好地和 Spring 整合起来进行开发。

Spring MVC 是我个人在开发 Web 应用时的不二之选。回想起几年前开始学习 Spring MVC 技术的时候,苦于网上没有太多详细且实用的教程,大多泛泛而谈、偏理论而轻实践,或者只是讲解了 Spring MVC 的部分常用功能,内容不够完整。自己在学习摸索的过程中遇到了很多问题,也踩过很多坑,这对于初学者来说,是效率非常低的一种方式。我们在竞争如此激烈的行业中,最应该追求的就是高效率,写代码也罢、学技术也罢,都是这样,只有做到事半功倍才有更多时间和精力去学习新技术,从而进一步提高自己的能力。

为什么写这门课

《Spring MVC 实战手册》

Spring MVC 技术现在已成为主流,但遗憾的是,网上相关详细全面且实用的教程还是很少,这对于初学者来说,学习成本依旧很高。作为一个热衷于分享干货的原创博主,我将自己长时间以来学习使用 Spring MVC 框架的经验和技巧整理成册,以 GitChat 达人课的形式分享给大家。

我本人比较反感长篇大论讲概念、没有多少实际干货的教程。再次强调,我们学习的目的主要在于应用,而不在于研究理论,所以我的写作风格是偏向于实际应用的,可以快速上手,同时辅以底层原理的讲解。整个课程深入浅出、通俗易懂,案例式 + 专题式的风格带领大家快速上手 Spring MVC

整个课程的设计兼顾初学者和有一定经验的开发人员,前半部分详细讲解 Spring MVC 框架在实际开发中需要用到的技能点,所选取案例全部是我个人在开发中遇到的典型问题,实用性很强

后半部分在前面的基础上进行了延伸扩展,包括当下主流的 NoSQL 数据库 MongoDB 的讲解,如何使用 Spring Data 框架操作 MongoDB,Nginx 搭建 Tomcat 集群实现负载均衡。

课程的最后,我把涉及的知识点进行了整合,来完成一个权限管理的实战项目,通过这套 Spring MVC + Layui + Spring Data + MongoDB 技术选型可以直接应用到实际开发中。

权限管理实战

权限管理是企业比较关注的,也是面试中经常会问到的重点问题,所以选择实现一个权限管理的功能模块,也是给大家添加一个求职砝码,让你更具竞争力。

权限管理模块用来设置系统的安全策略,用户只能访问已授权的资源,未授权的资源无法访问,可在后台动态设置用户的资源授权,通过将各种权限分配给角色,再将角色赋予用户的方式来完成。

本系统持久层使用的是 MongoDB 数据库,业务实现使用的是 Spring MVC + Spring Data 技术选型,前端使用的是 Layui 框架,具体效果图如下所示。

enter image description here

enter image description here

enter image description here

enter image description here

课程结构

本课程内容分为四大部分,共计 23 课。

第一部分:Spring IoC 专题(第 01 ~ 04 课)

万丈高楼平地起。IoC 作为 Spring 框架体系的底层容器,是我们必须要掌握的基础,这部分内容将讲解 Spring IoC 的原理及实际应用。

第二部分:Spring MVC 详解(第 05 ~ 17 课)

技能梳理、突破重点。有了前面的 Spring IoC 基础,接下来进入本课程的重头戏,这部分内容将详细讲解 Spring MVC 的使用,涵盖了实际开发中常用的技能点,理论结合实践的方式不仅仅让读者掌握基本的概念,同时具备使用 Spring MVC 开发项目的能力。

第三部分:MongoDB 专题(第 18 ~ 21 课)

百尺竿头,横向扩展。在实际开发中,Spring MVC 需要配合数据库来实现完整的业务功能,这部分内容将讲解当前主流的 NoSQL 数据库 MongDB,包括其安装及使用。

第四部分:项目实战(第 22 ~ 23 课)

融合贯通,更上一层楼。这部分内容将讲解 Nginx 搭建 Tomcat 集群,以及使用 Spring MVC + Layui + Spring Data + MongoDB 的技术选型来完成一个项目实战。

开发环境

  • MacOS Mojave 10.14
  • Eclipse Photon / IntelliJ IDEA Ultimate 2018.2
  • JDK 10.0.1
  • Maven 3.5.3
  • Tomcat 9.0.8
  • Spring MVC 5.0.8.RELEASE
  • MongoDB 4.0.0

课程寄语

希望大家学完本系列课程后,可以快速了解并掌握 Spring MVC 在项目中最常用的技能点,以及在实际开发中 Spring MVC 与其他技术的整合。同时学会使用一个完整的技术选型,可以直接应用到实际项目中,具备使用 Spring MVC 开发项目的能力。预祝学习愉快~

点击了解《Spring MVC 实战手册》

第01课:Spring IoC 初识

Spring 是一个企业级开发框架,为解决企业级项目开发过于复杂而创建的,框架的主要优势之一就是分层架构,允许开发者自主选择组件。

Spring 的两大核心机制是 IoC(控制反转)和 AOP(面向切面编程),从开发的角度讲,我们使用 Spring 框架就是用它的 IoC 和 AOP。

什么是 IoC 和 AOP?

  • IoC 是典型的工厂模式,通过工厂去注入对象
  • AOP 是代理模式的体现

这里我们来详细了解 IoC,它是 Spring 框架的灵魂,非常重要,理解了 IoC 才能掌握 Spring 框架如何使用。

IoC 也叫控制反转,首先从字面意思理解,什么叫控制反转?反转的是什么?

在传统的程序开发中,当需要调用对象时,通常由调用者来创建被调用者的实例,即对象是由调用者主动 new 出来的。

但在 Spring 框架中创建对象的工作不再由调用者来完成,而是交给 IoC 容器来创建,再推送给调用者,整个流程完成反转,因此是控制反转。

举个超市购物的例子。

传统方式:假如去超市买东西,我们需要先选择商品,然后用准备好的袋子或者购物袋把商品提回来。

IoC:只需要把袋子放在家门口,超市会自动在袋子里装满你需要的商品,然后打开袋子直接用就可以了。

我们通过创建一个 Student 对象来讲解 IoC 的使用。

传统方式

(1)创建 Student 类:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/919905
推荐阅读
相关标签
  

闽ICP备14008679号