常见的系统架构
三层架构
视图层View:用于接收用户提交请求的代码在这里编写,页面数据接受的类。
服务层Service:系统的业务逻辑主要在这里编写,一个service中可以创建各种类型的Dao,所谓业务逻辑,就是我从前端得到数据了,Dao也给我数据库中数据了,把这两个数据进行处理,最简单的是密码比对。
持久层Dao:直接操作数据库的代码在这里编写,只起到访问数据库的作用,简单来说,给参数然后返回数据库中符合条件的数据。
MVC架构
Model模型:模型,承载数据,并对用户提交请求进行计算的模块。其分为两类,一类称为数据承载Bean,一类称为业务处理Bean。所谓数据承载Bean是指实体类,专门承载业务数据的,如Student、User等。而业务处理Bean则是指Service或Dao对象,专门用于处理用户提交请求的。
View视图:视图,为用户提供使用界面,与用户直接进行交互。
Controller控件器:控制器,用于将用户请求转发给相应的Model进行处理,并处理Model的计算结果向用户提供相应响应。
MVC与三层架构的关系
MVC中的V和C均属于三层架构的View层。
MVC中的M(Model)包括了数据承载Bean和业务处理Bean,其中业务处理Bean分为Service或Dao对象,分别对应业务逻辑处理和数据库操作,它们对应的是三层架构中的Service层和Dao层。
SSM与三层架构的关系
SSM即SpringMVC、Spring、Mybatis三个框架。它们在三层架构中所处的位置是不同的,即它们在三层架构中的功能各不相同,各司其职。
SpringMVC:作为View层的实现者,完成用户的请求接收功能。SpringMVC的Controller作为整个应用的控制器,完成用户请求的转发及对用户的响应。
MyBatis:作为 Dao层的实现者,完成对数据库的增、删、改、查功能。
Spring:以整个应用大管家的身份出现。整个应用中所有的Bean的生命周期行为,均由Spring来管理。即整个应用中所有对象的创建、初始化、销毁,及对象间关联关系的维护,均由Spring进行管理。