truts作为全世界第一个开源MVC框架,具有高度的成熟性和广泛的项目应用,保证了其应用的稳定性。
Struts作为MVC模式的典型实现,对Model、View和Controller都提供了对应的实现组件,其具体的实现如图1.1所示。
Struts应该做到: ①管理用户的请求,作出相应的响应 ②提供一个流程控制器,委派调用业务逻辑和其他上层处理 ③处理异常 ④为显示提供一个数据模型 ⑤用户界面的验证 以下内容不应该在Struts表示层地编码中经常出现,他们与表示层无关。
①与数据库直接通信 ②与应用程序相关联的业务逻辑及校验 ③事务处理 在表示层引入这些代码,则会带来高耦合和难以维护的后果。
1.1.2持久层 典型的Web应用的后端是持久层。
开发者总是抵估构建他们自己持久层框架的挑战性。
系统内部的持久层不但需要大量的调试时间,而且还经常因为缺少功能而使之变得难以控制,这是持久层的通病。
幸运的是,有几个对象/关系映射(Object/RelationMapping,ORM)开源框架很好的解决了这类
问题,尤其是Hibernate。
Hibernate为Java提供了持久化机制和查询服务,它还给几经熟悉SQL和JDBC API的Java爱好者创造了一个学习桥梁【31。
Hibernate的持久化对象是基于POJO(Plain Old Java Object)和Java集合(collectionsl的。
此外,使用Hibemate并不妨碍正在使用的IDE(Integrated DevelopmentEnvironment)141。
基于S.S.H的综合性手机网站 图1.2 Hibernate全面解决体系 Fig.1.2 Hibernate absolutely solved system 下面是Hibernate所负责的相关信息: ①如何查询对象的相关信息 Hibernate是通过一个面向对象的
查询语言(HQL)或正则表达的API来完成查询的。
②如何存储、更新、删除数据库记录 ③Hibernate这类高级ORM框架支持大部分主流数据库,并且支持父表/子表fParent/child)关系、事务处理、继承和多态【5J1.1.3业务层 一个典型的Web中间部分是业务层或服务层。
从编码的视角看,这层是最容易被忽视的。
我们往往在用户界面层周围看到这些业务代码,这其实是不正确的。
因为它会造成程序代码的高耦合,这样一来,随着时间的推移,这些代码将很难维护。
Spring框架是连接Struts与Hibernate的桥梁,同时它很好地处理了业务逻辑层。
Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。
框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring框架是一个分层架构,由7个定义好的模块组成。
Spring模块构建在核心容器之上,核心容器定义了创建、配置、和管理bean的方式【6J,如图1.3所示。
一4一 大连理工大学专业学位硕士学位论文 组成Spring的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。
誉 童 翻矽毒I均ORM 誊I”l嘲w曲 ●崩抽盯域嚣_8A’113辨哇J00 翟如出A臼蛳虻霜纽错砭=。
n嘲 甜d魄}a^轻e轼如∞r :妇9#,DE / j 辅龇珏嘲鞠晡 _ 磬 w·b弁wMwo咄 飞醢弦篷鞋蕊氍簸缀缓缓缀搿缀缓翳荔蠢爨露糍四 飞露雅霸麓缀缓鞲缓臻籀驻麓臻锈缓搿缀臻醚搿缓四 黼V蝴 鬃 劳辅辨静螭镰嘲糕端黼 一翁0坼翻p梧弩畦赫嘧锚d硪强 瑷 。
毽p|Ⅵ啸,咖『.F._M锗嘲_ 缓 8pring Context 孵。
自删。
瑚啦力溆缓 缓缓荔施缓荔凌么锄黝 l 蕊 —坤l托垃翻,嚆:on嘞口睦 霸pr蠡r吣口^o 。
。
彳窜秘誊盛。
阳孵打精i盛朝j瞄啪 ,、 U Sq爿Ⅲ 甜●觏E结在狲时嗍巷晖蟹瞰 ,¥■h幽静幻种 易囊籀陀{魄白焉。
嵇埠晖,蝴 』,氧轴盔 毳 ’蚝越。
,剃r。
二,钆,.I…i