![](https://csdnimg.cn/release/download_crawler_static/87957559/bg8.jpg)
集中精力于业务逻辑,界面程序员(HTML 和 JSP 开发人员)集中精力于表现形
式上。
可维护性
分离视图层和业务逻辑层也使得 WEB 应用更易于维护和修改。
有利于软件工程化管理
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通
过工程化、工具化管理程序代码。
2.2 SSH 框架简介
SSH 框 架 是 J2EE 开 发 的 一 个 流 行 组 合 框 架 , 其 中 SSH 是
Struts+Spring+Hibernate 三个单词缩写。
(1)S——表示层框架 Struts
Struts 是一个在 JSP Model2 基础上实现的 MVC 框架,主要分 为模型
(Model)、视图(Viewer)和控制器(Controller)三部分,其主要的设计理念是通
过控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性和可重
用性。
(2)S——业务逻辑层框架 Spring
Spring 是一个解决了许多 J2EE 开发中常见问题并能够替代 EJB 技术的强大
的轻量级框架。这里所说的轻量级指的是 Spring 框架本身,而不是指 Spring 只
能用于轻量级的应用开发。Spring 的轻盈体现在其框架本身的基础结构以及对
其他应用工具的支持和装配能力。与 EJB 这种庞然大物相比,Spring 可使程序
研发人员把各个技术层次之间的风险降低。
Spring 框 架的核 心是控制 翻转 IoC(Inversion of Control)/ 依赖注入
DI(Dependence Injection)机制。IoC 是指由容器中控制组件之间的关系(这里,
容器是指为组件提供特定服务和技术支持的一个标准化的运行时的环境)而非
传统实现中由程序代码直接操控,这种将控制权由程序代码到外部容器的转移,
称为“翻转”[3]。DI 是对 IoC 更形象的解释,即由容器在运行期间动态地将依
赖关系(如构造参数、构造对象或接口)注入到组件之中[3]。Spring 采用设值注
入(使用 Setter 方法实现依赖)和构造子注入(在构造方法中实现依赖)的机制,
通过配置文件管理组建的协作对象,创建可以构造组件的 IoC 容器。这样,不需
要编写工厂模式、单例模式或者其他构造的方法,就可以通过容器直接获取所需
的业务组件。
(3)H——数据持久层框架 Hibernate
O/R mapping 技术是为了解决关系型数据库和面向对象的程序设计之间不匹