什么是mvc设计模式?
MVC模式(Model-View-Controller)是软件工程中常见的一种软件架构模式,该模式把软件系统(项目)分为三个基本部分:模型(Model,简称M)、视图(View,简称V)和控制器(Controller,简称C)。
使用MVC模式有很多优势
例如:简化后期对项目的修改、扩展等维护操作;使项目的某一部分变得可以重复利用;使项目的结构更加直观。
MVC模式赋予了模型、视图和控制器三个组件各不相同的功能。
视图(View):负责界面的显示,以及与用户的交互功能,例如表单、网页等。控制器(Controller):可以理解为一个分发器,用来决定对于视图发来的请求,需要用哪一个模型来处理,以及处理完后需要跳回到哪一个视图。即用来连接视图和模型。实际开发中,通常用控制器对客户端的请求数据进行封装(如将form表单发来的若干个表单字段值,封装到一个实体对象中),然后调用某一个模型来处理此请求,最后再转发请求(或重定向)到视图(或另一个控制器)。模型(Model):模型持有所有的数据、状态和程序逻辑。模型接收转发来的视图数据,并返回最终的处理结果。
实际开发中,通常用封装数据的JavaBean和封装业务的JavaBean两部分来实现模型层。
MVC模式的流程:
浏览器通过视图向控制器发出请求,控制器接收到请求之后对数据进行封装,选择模型进行业务逻辑处理,随后控制器将模型处理结果转发到视图或下一个控制器,在视图层合并数据和界面模板生成HTML并做出最终响应,如图所示。
在MVC模式中,视图View可以用JSP/HTML/CSS实现,模型Model可以用JavaBean实现,而控制器Controller就可以用Servlet来实现。
什么是servlet
Servlet是基于Java技术的Web组件,运行在服务器端,由Servlet容器所管理,用于生成动态网页的内容。Servlet是一个符合特定规范的Java程序,编写一个Servlet,实际上就是按照Servlet的规范编写一个Java类,Servlet主要用于处理客户端请求并做出响应。
在绝大多数的网络应用中,客户端都是通过HTTP协议来访问服务器端资源。这就要求开发者编写的Servlet要适用于HTTP协议的请求和响应。这里讲解的Servlet,实际就是讲解HttpServlet的相关类。
如果要开发一个能够处理HTTP协议的控制器Servlet,就必须继承javax.servlet.