声明系统架构是指整个应用系统程序的结构[不是某一门语言特有的,是软件结构通用的],经常提到的系统架构一般有两种,三层架构和MVC,这两种架构之间有区别,是不一样的概念,但是它们之间的共同点是为了降低系统模块之间的耦合度(降低耦合度可以简单理解为改动的时候不需要更改很多地方,多人参与项目可以分开写,各写个的部分,对接的时候是基于接口,内部互不影响)。

1.三层架构

三层架构师指:视图层view,服务层service,持久层Dao,它们的功能是:
1.view层:用来接收用户请求的代码,比如请求如何分发;
2.service层:系统的业务逻辑主要写在这里,比如借书系统会有借书的业务;
3.Dao层:直接操作数据库的代码,之所以分Dao层,主要是可能相同的sql语句可能使用在比较多的地方,改动的时候可以理解为只改动一处即可。
为了降低耦合度,在这里,使用面向抽象编程,也就是上层对下层的调用,直接通过接口来完成,下层对上层的真正服务提供者,是下层实现的接口实现类,实现类是可以更换的,这就实现了层间的解耦合。

2.MVC

mvc就是Model模型,view视图,以及Controller控制器
model1 = JSP(JSP+Servlet)+JavaBean
model2 = JSP+JavaBean+Servlet
1.View:视图,为用户提供使用界面,与用户进行交互。
2.Model:模型承载数据,对用户提交请求进行计算的模块,分为两类:

  • 1.数据承载bean,
  • 2.业务承载bean,数据承载bean是指实体类专门承载业务数据的,比如Student,User,业务处理bean是指Service或者Dao对象,专门处理用户的请求的。
    3.Controller:控制器,用来将用户请求转发给相应的Model进行处理,并且根据Model的计算结果向用户提供相应的响应。

3.MVC与三层架构的区别

MVC架构里面的Controller以及View层合并在一起就是三层架构的View层,而MVC的Model层就包含了三层架构的Service层以及Dao层。

4.SSM与三层架构的联系

1.Spring:是整个应用的大管家,整个应用中所有的bean的生命周期行为,都是由Spring来管理的,就是说整个应用中所有的对象的创建,初始化,销毁,以及对象之间关联的关系维护,都是由Spring来进行管理。

2.SpringMVC:作为view的实现者,完成客户请求的接受功能,它的controller作为整个应用的控制器,完成用户请求的转发和对用户的响应。

3.Mybatis:作为Dao的实现者,完成数据库的增伤改查等功能。

三层架构请求传递 三层架构service_三层架构