三层架构和MVC思想

JSP Model1

JSP Model1是JavaWeb早期的模型,它适合小型Web项目,开发成本低!Model1第一代时期,服务器端只有JSP页 面,所有的操作都在JSP页面中,连访问数据库的API也在JSP页面中完成。也就是说,所有的东西都在一起,对后 期的维护和扩展极为不利。
使用:JSP+JavaBean
存在问题:此时JSP不仅仅需要展示页面,还得处理请求,而JSP本身不擅长处理请求
解决方法:将servlet类从中提取出来,处理事务逻辑和请求

JSP Model2

JSP Model1第二代有所改进,把业务逻辑的内容放到了JavaBean中,而JSP页面负责显示以及请求调度的工作。虽 然第二代比第一代好了些,但还让JSP做了过多的工作,JSP中把视图工作和请求调度(控制器)的工作耦合在一起 了。
使用:JSP+JavaBean+Servlet,Model2 是MVC设计模式在Java语言的具体体现。在Model2中,以Servlet为中心(所有的请求都先发给Servlet)
责任分类思想 (各自做各自最擅长的事情)
  JSP:视图层,负责与用户打交道,接收用来得数据,和将数据展示给用户看
  Servlet:控制层,负责找到合适的模型对象来处理业务逻辑,转发到合适的视图
    1.接收参数类型,封装成对象
    2.调用合适的方法处理请求
    3.跳转页面展示
  JavaBean:模型层:完成具体的业务逻辑功能

三层架构

JSP模式是理论基础,但实际开发中,我们常将服务器端程序,根据逻辑进行分层。一般比较常见的是分三层,我 们称为:经典三层体系架构:表示层(web层),数据访问层(dao),业务逻辑层(service)
![](https://img2020.cnblogs.com/blog/1668748/202004/1668748-20200430101542592-744226029.png)
1.表示层:又称为 web层,与浏览器进行数据交互的。
2.业务逻辑层:又称为service层,专门用于处理业务数据的
3.数据访问层:又称为dao层,与数据库进行数据交换的。将数据库的一条记录与JavaBean进行对应。

MVC

![](https://img2020.cnblogs.com/blog/1668748/202004/1668748-20200430102025072-2093842417.png)
1.责任分离思想:
M:Model:数据模型对象:(JavaBean)
V:View:视图界面(JSP)
C:Controller,控制器(Servlet)
原文地址:https://www.cnblogs.com/linjing111/p/12809385.html