SpringMVC
一、回顾MVC架构
1.什么是MVC?
- MVC指的是模型(Model),视图(View),控制器(Controller),是一种软件设计规范.
- MVC将业务逻辑,数据显示分离
- MVC降低了视图和业务逻辑之间的双向耦合
- MVC不是一种设计模式,MVC是一种架构模式
MVC组成:
(1)Model层:Model指模型部分,一般在应用中Model层包括业务处理层和数据访问层。数据访问层主要是对数据库的一些操作的封装。业务处理层应用JavaBean构建, JavaBean主要是用作将从View层获取的数据和数据库的数据进行桥接。除却JavaBean以外,若想构建分布式应用系统,可以应用EJB组件进行业务逻辑层的构建。
(2)Controller层:Controller指控制部分,一般是对View层提交的请求为其设置对应的Servlet进行特定功能的处理,这里的进行特定功能的处理一般是编写在Model中的业务处理层中的。Controller一般只是在Web应用中充当一个中介者的作用。
(3)View层:View指视图部分,这一部分的内容是展示给用户实际进行交互的,通常使用JSP和HTML进行构建
Model1时代
Model1主要分了两层,视图层和模型层Model1优点:架构简单,适合小型项目开发
Model1缺点:JSP职责不单一,不易于维护
Model2时代
分为视图,控制,模型
- 用户发请求
- servlet接受请求数据,并调用对应的业务逻辑方法
- 业务处理完毕,将返回并更新后的数据给servlet
- serlvet再转交给JSP,由JSP来渲染页面
- 响应给前端更新后的页面
职责分析:
Controller:控制器
1.取得表单数据
2.调用业务逻辑
3.转交指定页面
Model: 模型
1.业务逻辑
2.保存数据的状态
View 层
1展示页面
二、回顾Servlet
Servlet是什么?
Java Servlet是运行在Web服务器或应用服务器上的程序,是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层.优点:
性能明显更好。
Servlet 在 Web 服务器的地址空间内执行。这样它就没有必要再创建一个单独的进程来处理每个客户端请求。
Servlet 是独立于平台的,因为它们是用 Java 编写的。
服务器上的 Java 安全管理器执行了一系列限制,以保护服务器计算机上的资源。因此,Servlet 是可信的。
Java 类库的全部功能对 Servlet 来说都是可用的。它可以通过 sockets 和 RMI 机制与 applets、数据库或其他软件进行交互。
Servlet架构
MVC框架要做哪些事情
1.将url映射到java类或者java类的方法
2.封装用户的数据
3.处理请求-调用相关的业务处理-封装响应数据
4.将响应的数据进行渲染