论文部分内容阅读
近年来,不断涌现的新框架给J2EE Web应用带来契机的同时,也给软件工程师们带来最大的挑战:如何在纷繁复杂的框架中进行选择和组合,来开发扩展性好,重用性高,易维护,易管理Web应用系统,以应对复杂多变的市场需求。针对以上问题,论文在认真的研究了Struts,Spring,Hibernate等Java主流框架的基础上对其进行了深入的分析:Struts实现了MVC模式,很好地实现了业务逻辑与用户界面的分离,将模型和视图从底层事务处理分割开来,使代码结构条理化,便于维护,但其对业务层支持不足;Spring是一个职责定义明确的业务层框架,并实现了业务逻辑和数据持久化的分离,这样使层次结构更加清晰,便于维护和代码冗余减少,不足之处是虽然它在每个层次都有体现,但其比较稚嫩(如在显示层不如Struts);Hibernate是独立的持久层技术,它在数据库外裹了一层面向对象的外衣,Java程序中所有进行的数据库的操作都交给Hibernate来处理,程序员不再写繁琐的SQL语句。从以上分析不难看出,对Struts,Spring,Hibernate进行整合,扬其长,避其短,是一种必然的趋势,也正是本文研究的重点。在整合过程中,以Struts为骨架,利用Struts的动态插入和加载组件的功能,把Spring框架以插件的形式插入到Struts框架中;由于Spring是基于容器对事务进行管理,并对Hibernate的集成提供了支持,通过配置文件把Hibernate移交给Spring容器进行集中管理。这样它们就被有机的整合在一起,Struts可以专门实现流程控制和页面导航而不必关心业务逻辑;Spring就可以发挥它在事务管理和依赖注入方面的特有的优势而不必担心在流程控制上的苍白;Hibernate为持久层提供便捷的持久化服务。显而易见,整合后的框架是一套松散耦合,层次清晰,便于移植,易于维护和管理的Web应用框架。最后,结合实际项目—上海黄金交易系统,对整合框架的优势和可行性进行了验证。