SSH前言学习笔记(1)

1、系统架构

系统架构是整个应用系统程序大的结构

使用系统架构的目的是:降低模块间的耦合度

系统架构包含两种:1、三层架构    2、MVC

1.1三层架构

三层架构顾名思义,整个架构分为三层:

1、视图层View:用来接收用户提交的请求;

2、服务层Service:系统业务逻辑

3、持久层Dao:操作数据库的代码(Dao=Data Access Object)

三层架构之间的关系如图所示:

SSH前言学习笔记(1)
上层对下层的使用是通过接口来处理的

1.2 MVC

MVC其实是Model View Controller的缩写

View视图层: 为用户提供使用界面,与用户直接进行交互;

Model模型: 是处理用户提交的请求,并计算出响应结果的模块;

Controller控制器: 将用户所有请求转发给相应的Model处理,根据Model的计算结果向用户提供响应。

SSH前言学习笔记(1)

1.3MVC与三层架构之间的关系

可能大家在网上或者看到MVC与三层架构都有View层,所以认为MVC就是三层架构,其实不然,MVC与三层架构虽然相似,但是还是不同。

大家可以看下面的图:

SSH前言学习笔记(1)

可以看到整体上来看,这是一个三层结构,有视图层View、服务层Service和持久层Dao,但是在视图层View里面我们可以看到:有MVC中的V(View)和C(Controller),而服务层Service和持久层Dao组合起来就是M(Model),因此我们说MVC和三层架构实际上是不一样的。

1.4SSH与三层架构的关系

SSH、也可称作S2SH,是Struts2、Spring与Hibernate三个框架的总称

Struts2:作为View层的实现者,完成用户的请求接收功能;Struts2的Action作为整个应用的控制器,完成用户请求的转发以及对用户的响应。

Hibernate:作为Dao层的实现者,完成对数据库的增、删、改、查功能。

Spring(容器:用来装对象):以整个应用大管家的身份出现。整个应用中所有Bean的生命周期行为均有Spring来管理,即整个应用中所有对象的创建、初始化、销毁、以及对象间的关联关系的维护均由Spring进行管理。

Spring的使用可以解决企业级开发的复杂性,通过对代码进行分类降低模块间的耦合度

SSH前言学习笔记(1)

其中Struts2充当View层,而Hibernate作为Dao层接口的实现,连接数据库完成对数据库的增删改查。