- 对于了解程序发送请求->controller->service->dao有一定帮助。
两种开发模式
- jsp model1
- jsp model2
jsp model1
早期的web项目,用jsp技术完成所有的操作(处理请求,处理数据,处理响应等),jsp中使用了大量的java代码不利于维护。所以开发了开发模式。
- JSP Model1 = JSP + JavaBean
- JSP 负责业务操作和页面数据的显示,
- JavaBean负责处理数据
- 只适用于一些小型的web服务,而且Jsp中的java的代码还是较为复杂。于是开发了JSP Model2.
JSP Model2
- JSP Model2 = JavaBean + Jsp + Servlet
- JavaBean 处理数据
- Jsp 负责页面数据的显示
- Servlet 负责业务逻辑的处理
- 该模式有了一定的分层,适用于一些复杂点的项目了。但还是存在缺陷。
mvc设计模式
- jsp model2中的 model view controller ,来源于MVC设计模式。
- 根据功能对软件进行进行模块划分(分层划分):分为模型,视图,控制器。
模型
即model ,
- 处理数据,当数据进行改变时,通知视图改变数据
视图
即View
- 负责与用户交互。
- 从模型中获取数据展示到页面,也将数据传递给控制器进行处理。
- 当模型里的数据发生过改变时,视图将页面的数据进行同步更新。
控制器
即Controller
- 用于负责应用程序的用户交互部分;
- 接受从View传递过来的数据,并向模型发送数据;
- 接受用户发送的请求,并响应数据。
javaweb三层架构
- 包括web层,Service层,dao层。这种结构用在Web项目中。
web层
- 包括了jsp,servlet,javabean的相关内容,用于接受用户请求,处理请求,处理数据,并将数据返回给用户。
Service层
- 称为bussiness,用于处理业务逻辑,不能包含web层的内容
Dao层
- DataBase access Object 数据库持久化对象,对数据库进行crud操作
Javaweb三层架构与MVC设计模式区别
- Javaweb是分层式的开发架构,适用于任何项目
- MVC只是一个设计模式,不一定使用与任何项目
- 开发中先确定项目的架构,架构确定后,才会确定这个项目使用哪种设计模式。
- 架构相当于Javaweb,设计模式相当于MVC。