当前课程知识点:Web后端开发技术 >  第9章 某高校毕业生信息发布系统开发 >  9.1 技术准备 >  9.1.1技术准备-MVC模式

返回《Web后端开发技术》慕课在线视频课程列表

9.1.1技术准备-MVC模式在线视频

下一节:9.1.2技术准备-Ajax技术

返回《Web后端开发技术》慕课在线视频列表

9.1.1技术准备-MVC模式课程教案、知识点、字幕

同学们好

欢迎回来继续学习Web后端开发技术

在这一小节当中

我们将介绍mvc模式

mvc模式它是一种体系结构

包括 model View 和Controller

每个部分都有各自的功能和作用

他们以最少的耦合进行协同的工作

它的目的是提高应用程序的可扩展性

和可维护性

下面我们看一下MVC模式的工作过程

由视图层发起请求

那么这个请求被发送到Controller

Controller会根据请求选择

或者说调用model

然后根据数据处理的结果来选择合适的视图

那么这个视图是要被返回给客户端的

那么在返回之前视图要向model

进行数据的查询

model将数据返回给视图以后

最后将结果响给客户端

那么这就是mvc的工作过程

在mvc模式下面

共计分为三层

第1层是模型层

它是系统的核心

分为数据模型和业务模型

数据模型负责用户数据和

数据库操作后的数据的封装

业务模型负责对业务逻辑的封装

视图层负责应用层的外观

实现与用户的交互

控制层

它控制整个系统的逻辑

介于模型层和视图层之间

进行数据的流程转向和控制

相当于一个调度

那么在java web开发当中

有两大类模式

下面我们逐一介绍一下

第1类是model1模式

在这model1模式下面有两种

第1种是jsp模式

我们看这张图

jsp的工作模式是这样的

当客户端发送请求的时候

那么这个请求被递交到jsp然后由

JSP实现与数据库之间的数据交互

数据

返回给jsp以后

jsp将响应结果直接返回客户端了

那么在这种模式下

jsp它的作用是既包含了

model层

也包含了显示

还包含了控制层

那么这种模式在开发当中

它具有以下的优点

开发的这个时间比较短

小幅度的修改是比较容易的

但是它有很大的缺点

程序的可读性比较差

这个代码可用可重用性比较低

因为在JSP文件当中

混合了Java代码和HTTP代码

所以它具有这样一些缺点

为了改进缺点

在jsp和数据库之间

我们增加了JavaBean

那么这种模式就叫

jsp加JavaBean这种模式

那么在这种模式下

客户端发送的请求被递交到

JSP以后

由JSP通过JavaBean

实现与数据库之间的数据交互

最后还是由JSP将结果返回给

客户端

那么在jsp加JavaBean

这种模式下

javaBean的作用

相当于一个 model

而jsp的作用包含了控制和视图

那么这种模式它有哪些优点呢

第1个优点就是它的程序

可读性提高了

Java代码与页面分离

易于维护

可重用性提高了

它的缺点就是缺少流程控制

为了进一步改进

就有了 model2模式

model2模式

实际上就是 mvc模式

下面我们把model2模式的工作过程

给大家做一个进一步的介绍

浏览器发送请求

那么这个请求被递交到

servlet上面

而不是被递交到JSP上面

然后servlet的会向

JavaBean

进行数据的调用

javaBean进而与数据库之间

实现数据的交互

根据 JavaBean的数据处理结果

Servlet会选择合适的视图

那么这个视图要被返回给客户端

那么在返回客户端之前

视图会向模型层请求数据

最后才将这个结果响应给客户端

那么这就是model2的工作模式

在开发过程当中

我们主要是使用这种 model2模式

也就是MAC模式进行软件开发的

所以这个工作过程希望同学们能够

进一步去理解

在开发当中尝试着去用

那么这种模式它有哪些优点

第1个

开发流程更为明确

页面显示与业务处理是分离的

第2个程序

管控核心化

servlet集中控制每个请求的流程

servlet就是一个controller

它的作用就相当于我们公交公司的

调度一样

第3个优点

是容易维护

缺点

在某种意义上我们把它认为是缺点

是开发周期长

要求开发人员具有较好的系统设计能力

下面我们使用model2来演示一下

用户注册这个功能

那么是用户注册功能所涉及到的几个组件

下面我把这个过程给大家做一下简单的介绍

通过 register

jsp的页面

发起注册的请求

那么这请求对递交到userServlet上面

那么userServlet会创建一个

userBean对象

通过userBean调用DBUtil对象

实现与数据库之间的数据交互

这里面指的就是去查询数据库

数据库当中有没有已经存在的用户名

如果没有那么这是一个成功的数据库的

记录的添加操作

然后就由servlet

响应success.jsp页面

那么JSP页面是要返回给客户端的

那么在返回客户端的时候

jsp界面还会调用userBean

就是 JavaBean

来获取数据

以便在客户端显示一些用户的信息

下面我们看一下相关的代码

这个是servlet的代码

简单的把这个代码

给同学们做一个介绍

首先这里面new了一个userBean

那么userBean就是一个

JavaBean 它里面有用户名

密码和EMAIL

接下来它要作用

做的事情是调userBean的方法

来验证表单它的有效性

比如用户名和密码是否符合某些规则

如果验证失败的话

那么就做一个 forward

同时将相关的信息放在

request域中

以便在试图能够看到

如果验证成功的话

就进行下面的操作

什么操作呢 向数据库添加记录了

那么向数据库添加记录的时候

它也是调用 JavaBean的一个方法

向数据库来添加记录

如果添加记录的时候

数据库已经存在了这样一个用户名

这里面

添加记录就会失败

当添加记录失败的时候

它也做一个forward的动作

然后将错误的信息放在

request域

携带过去

如果添加记录成功

接下来他就要做什么呢

获得一个session

然后向session当中存一个名为这个

值为这样一个属性

接下来它做一个页面的重定向

重定向到success页面上去

那么在success jap界面上面

它会通过一个EL表达式获取属性的

userName的值

在页面上显示

欢迎您某某登录

我们再看一下

register.jsp

在这个文件当中

它上面是用forEach

把错误的信息显示出来

下边就是一个form表单

那么form表单我们看到提交的时候是

提交到刚才我们讲到了userServlet上面去

那么这就是一个使用mvc模式

开发的一个用户注册的功能

希望同学们在以后的开发过程当中

使用这种模式来开发我们的web应用

我们这一小节就讲到这里

再见

Web后端开发技术课程列表:

第1章 Java Web开发准备

-1.0 导学

--1.0.1 导学

-1.1 Web应用开发概述

--1.1.1 Web应用简介

--1.1.2 Web开发技术

--1.1.3 测试

-1.2 准备Java Web应用开发环境

--1.2.1 准备Java Web应用开发环境

--1.2.2 测试

--1.2.3 谈谈JavaWeb优势和学习方法

-1.3 任务实现:Hello World Web项目

--1.3.1 Hello World Web项目

--1.3.2 测试

-1.4 小结

--1.4.1 小结

-本课程所有代码

--课程参考代码

第2章 Servlet技术基础

-2.0 导学

--2.0.1 导学

-2.1 Servlet概述

--2.1.1 Servlet简介

--2.1.2 Servlet API

--2.1.3 测试

-2.2 创建Servlet

--2.2.1 Hello Servlet

--2.2.2 Servlet配置

--2,2,3 作业

-2.3 Servlet应用

--2.3.1 处理超链接请求

--2.3.2 处理form表单请求

--2.3.3 处理结果

--2.3.4 测试

-2.4 任务实现:某高校毕业生信息发布系统-注册与登录(Servlet版)

--2.4.1 注册代码实现

--2.4.2 登录代码实现

--2.4.3 测试

--2.4.4谈一谈jQuery前端开发框架

-2.5 ServletConfig接口

--2.5.1 ServletConfig接口

-2.6 ServletContext接口

--2.6.1 ServletContext接口

-2.7 HttpServletRequest接口

--2.7.1 获取请求报文信息

--2.7.2 上传照片

--2.7.3 获取网络连接信息

--2.7.4 存取请求域属性

--2.7.5 测验

--2.7.6 在请求转发和重定向过程中传递数据

-2.8 HttpServletResponse接口

--2.8.1 HttpServletResponse接口

--2.8.2 输出服务器端图片

--2.8.3 测试

-2.9 任务实现:某高校毕业生信息发布系统-简历添加

--2.9.1 任务实现:某高校毕业生信息发布系统-简历添加

-2.10 小结

--2.10.1 小结

-动画演示:Java Web应用服务器处理客户端请求的过程

--Java Web应用服务器处理客户端请求的过程

第3章 会话跟踪

-3.0 导学

--3.0.1 导学

-3.1 Cookie技术

--3.1.1 Cookie技术概述

--3.1.2 Cookie技术应用-自动登录

--3.1.3 测试

-3.2 Session技术

--3.2.1 Session技术概述

--3.2.2 Session技术-Session技术应用购物车

--3.2.3 测试

-3.3 URL重写与隐藏表单域

--3.3.1 URL重写技术与隐藏表单域

--3.3.2 测试

-3.4 任务实现:某高校毕业生信息发布系统-简历修改

--3.4.1 任务实现:某高校毕业生信息发布系统-简历修改

--3.4.2 讨论会话跟踪技术的应用场景

-3.5 小结

--3.5.1 小结

第4章 JSP基础

-4.0 导学

--4.0.1 JSP导学

-4.1 jsp概述

--4.1.1 JSP概述

--4.1.2 测试

-4.2 脚本元素

--4.2.1 脚本元素

--4.2.2 测试

-4.3 指令元素

--4.3.1 指令元素

--4.3.2 测试

-4.4 动作元素

--4.4.1 动作元素

--4.4.3 测试

-4.5 内置对象

--4.5.1 内置对象(1)

--4.5.2 内置对象(2)

--4.5.3 测试

-4.6 JavaBean

--4.6.1 JavaBean概述

--4.6.2 分步注册

--4.6.3 测试

-4.7 任务实现:某高校毕业生信息发布系统-首页(JSP版)

--4.7.1 任务实现:某高校毕业生信息发布系统-首页(JSP版)

--4.7.2 在JSP页面显示内容的都有哪些方法

-4.8 小结

--4.8.1 小结

第5章 表达式语言

-5.0 导学

--5.0.1 表达式语言

--5.0.2 测试

-5.1 el语法

--5.1.1 EL语法

--5.1.2 测试

-5.2 el隐含对象

--5.2.1 EL隐含对象

--5.2.2 测试

-5.3 任务实现:某高校毕业生信息发布系统-学生详细信息展示

--5.3.1 任务实现:某高校毕业生信息发布系统-学生详细信息展示

--5.3.2 测试

-5.4 小结

--5.4.1 小结

--5.4.2 讨论el表达式的优势

第6章 标准标签库

-6.0 导学

--6.0.1 标准标签库

--6.0.2 测试

-6.1 核心标签库

--6.1.1 通用标签

--6.1.2 条件标签

--6.1.3 迭代标签

--6.1.4 URL标签

--6.1.5 测试

-6.2 任务实现:某高校毕业生信息发布系统-首页(JSTL版)

--6.2.1 任务实现:某高校毕业生信息发布系统-首页(JSTL版)

--6.2.2 测试

-6.3 小结

--6.3.1 小结

--6.3.2 讨论如何实现自定义标签

第7章 Filter和Listener

-7.0 导学

--7.0_导学

-7.1 过滤器

--7.1.1过滤器(1)

--7.1.2过滤器(2)

--7.1.3 测试

-7.2 监听器

--7.2.1.1与ServletContext相关的监听器

--7.2.1.2示例:访问网站计数功能

--7.2.2.1与Session相关的监听器

--7.2.2.2示例:显示在线用户名称

--7.2.3.1与Request相关的监听器

--7.2.3.2示例:实时显示访问网站用户信息示例

--7.2.4 测试

-7.3 任务实现:某高校毕业生信息发布系统-单态登录

--7.3.1 任务实现:某高校毕业生信息发布系统-单态登录

--7.3.2 测试

-7.4 小结

--7.4.1小结

--7.4.2讨论filter和listener使用场景

第8章 JDBC

-8.0 导学

--8.0_导学

-8.1 JDBC API

--8.1.1 JDBC API

--8.1.2 测试

-8.2 JDBC API访问MySQL基本步骤

--8.2.1 JDBC API

--8.2.2 测试

-8.3 任务实现:某高校毕业生信息发布系统-注册与登录

--8.3.1 任务实现:某高校毕业生信息发布系统-注册与登录(JDBC版)

--8.3.2 测试

-8.4 小结

--8.4.1小结

--8.4.2 讨论JDBC工具类

第9章 某高校毕业生信息发布系统开发

-9.0导学

--9.0导学

-9.1 技术准备

--9.1.1技术准备-MVC模式

--9.1.2技术准备-Ajax技术

--9.1.3技术准备-jQuery对Ajax的实现

--9.1.4_技术准备- JDBC工具类

--9.1.5 测试.

-9.2 系统设计

--9.2系统设计:某高校毕业生信息发布系统开发

-9.3 系统实现

--9.3.1完善登陆和注册功能

--9.3.2完善简历添加功能

--9.3.3完善简历修改功能

--9.3.4.1首页分页显示

--9.3.4.2首页分页显示

-9.4 小结

--9.4.1小结

--9.4.2讨论:分页组件

9.1.1技术准备-MVC模式笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。