基于SSH框架结构的软件开发平台研究外文翻译资料
2022-12-19 17:38:12
英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料
基于SSH框架结构的软件开发平台研究
Yongchang Ren , Deyi Jiang , Tao Xing , Ping Zhu
渤海大学信息科学与技术学院,锦州121013,中国
天津市陈塘科技商务区管理委员会,300220,中国.
北京城市系统工程研究中心,北京100089,中国
摘要:软件开发平台的研究是一个复杂的系统工程。 针对当前Web应用开发领域存在的问题,利用计算机相关技术,结合比较流行的开源框架SSH,研究基于SSH框架构建的软件开发平台。 在分析软件开发存在的问题的基础上,着重研究了SSH框架平台的关键技术,包括表示层框架Struts,业务逻辑框架Spring,数据持久层框架Hibernate,J2EE框架集成新SSH等。 本文的研究内容适用于大型Web程序开发企业,它提高了生产力,提高了软件质量,对促进我国软件产业的发展具有重要意义。
关键词:SSH框架;软件开发平台 ;Struts; Spring; Hibernate
1.简介
大型企业级Web应用系统的开发通常需要一个良好的软件架构来促进协同开发的扩展和升级,但传统的开发模式已经不能满足这些要求。 针对当前Web应用开发领域存在的问题,遵循系统工程的原理和方法,综合运用软件工程,数据库系统,计算机网络,面向对象技术,结合更流行的开源框架SSH(Spring,Struts,Hibernate),研究软件自动生成平台基于Java框架的B / S结构,帮助开发人员构建一个结构清晰,可重用性好,维护方便的Web应用系统
设计思想是由前端大型数据库支持的前端程序运行的软件开发由计算机自动完成,程序员不需要掌握Java和数据库技术将能够开发出更好的软件系统。 翻译传统的编码软件开发到系统分析,降低了软件开发人员的技术要求,提高软件的开发效率,改变传统的软件开发
模型。
2.软件开发中的问题
在这个阶段,软件开发存在许多问题,主要表现在以下几个方面[1]:
(1)软件开发“需求超供”现象影响了发展企业。不同公司需要不同的软件,无需通用软件即可应用每个企业管理信息系统。软件开发周期长,代码错误,软件可靠性差,不利于维护和升级。企业对软件的需求比较复杂,而软件开发公司企业提供的软件也不尽如人意。
(2)软件质量不可靠,软件维护较差,用户通常不满意完成的软件。软件错误是不可避免的,软件测试需要花费大量时间。软件维护人员不仅了解业务流程,还熟悉软件开发技术,解决软件中的bug可能会引入新的bug,而很多人都没有愿意从事软件维护。如果软件经常出错,会引起用户的不满,并且最终被抛弃。
(3)软件开发人员无法满足市场需求,他们需要掌握太多知识。软件开发需要掌握:数据库技术,数据库访问技术和各种数据库管理系统,网络和互联网技术,开发工具和相关结构和类库,软件测试和分析工具以及许多其他技术。如技术升级加速,开发人员在忙碌的同时不断学习新技术工作,负担太重。
(4)软件开发人员的频繁流动给公司带来了巨大的损失。软件是知识产品的人,每个人都有自己的编程习惯,思想和方法。这是很很难读懂某人的节目。如果开发人员中途离开项目,其他人将很难接管,甚至在交付软件项目后离开,其他人也很难维护。
(5)软件没有相应的文件,给后半部分造成了很大的困难开发,维护和重建。软件开发应首先编写文档然后编写程序,修改文件后修改程序。但是一些开发人员没有养成良好的习惯;有些忙于编写或修改程序而忘记修改文档,导致与文件和程序不一致;许多软件开发公司都有对文件的数量,质量和格式没有明确要求。
3. SSH框架平台的关键技术
大型企业级Web应用系统的开发通常需要一个好的软件体系结构促进协同开发的扩展和升级,以及更流行的开源框架SSH,是开发企业级J2EE的Web应用程序的轻量级解决方案。 目前,市场上已经出现了一些商业,开源的应用框架基于J2EE,其中主流框架技术是基于MVC的Struts框架模式和Spring框架基于IoC模式和对象/关系映射框架Hibernate等等。
3.1表示层框架Struts
它是在JSP模型的基础上实现的MVC框架,主要分为模型,查看器和控制器三部分,设计理念是通过解析性能逻辑和业务逻辑。控制器,以提高系统的可维护性,可扩展性和可重用性。 Struts框架的体系结构如图3-1所示。
图3-1 Struts框架的体系结构
视图。 View主要包含JSP页面,没有流程逻辑,业务逻辑和模型信息,只标记。 Struts本身包含一组TagLib,这也是其中的精华之一,灵活使用可以简化JSP页面的代码并提高开发效率。
控制器。 Struts中的Controller是ActionServlet,主要由它自己提供。 ActionServlet接收客户端的所有请求,并根据配置将控件传输到相应的Actionfile(struts-config.xml)。
模型。 Struts没有定义特定Model层的实现,Model层通常是紧密的与业务逻辑有关,并具有持久性要求。 目前在商业领域和开放源世界,都有一些优秀的工具来促进模型层的开发。
3.2 业务逻辑层框架Spring
它是一个功能强大的轻量级框架,可以解决J2EE中的许多常见问题,并且可以取代EJB技术。 轻量级指的是Spring框架本身,而不是Spring只能用于轻量级应用程序开发。 Spring的轻盈体现在他们自己的基础架构框架以及其他应用程序工具的支持和组装能力上。 与巨像EJB相比,Spring可以使流程开发人员之间的风险降低各种技术水平。这样,无需编写工厂模式,单一图案或其他施工方法,可以直接获得通过容器的必要业务组件。Spring框架的结构如图3-2所示。Spring框架由七个定义明确的框架组成模块,每个模块或组件可以独立存在,或实现与一个或多个模块的联合。 Spring Core Container用于管理业务组件的IoC容器,是Spring应用程序的核心; Spring DAO和Spring ORM提供了数据访问的抽象模块,还集成了Hibernate,JDO和iBatis等流行的对象关系映射框架模块支持,并提供了缓冲连接池,事务处理等重要服务功能,保证了系统 性能和数据完整性;Spring Web模块提供了许多Web应用程序的抽象包,它可以将Struts,WebWork和Spring等Web框架集成到自己的解决方案中。
图3-2 Spring框架的模块
3.3数据持久层框架Hibernate
生成O / R Mapping技术是为了解决关系数据库与面向对象编程之间不匹配的矛盾。 Hibernate是最流行的O / R Mapping框架,可以在关系数据库和Java对象之间自动映射,程序员可以使用一种非常简单的方式来实现数据库操作。 Hibernate的工作原理如图3-3所示。Hibernate通过JDBC包,将底层数据库操作屏蔽到程序员,因此程序员专注于OO应用程序开发,并提高开发效率。工作程序员访问数据库是为持久对象准备Xml映射文件。底层数据库中的更改只是更改初始配置文件(hibernate.cfg.xml或hibernate.properties)不能影响应用程序。Hibernate有自己的面向对象查询语言HQL,HQL功能强大,支持当前最流行的数据库,如Oracle,DB2,MySQL,Microsoft SQL Server等,是目前应用最广泛的O / R映射工具。 Hibernate为快速开发应用程序提供底层支持。
图3-3 Hibernate的工作原理
3.4用于集成SSH的新J2EE框架
分析了基于J2EE的三种框架技术,然后通过集成这三种技术框架来改进传统的J2EE Web开发模型,形成一种新的,轻量级的J2EE框架。 集成SSH框架的系统架构如图3-4所示。从责任系统分为四层:表示层,业务逻辑层,数据持久层和域模块层。 其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架模型中,我们使用Hibernate框架来支持表示层,使用Spring的业务层。 具体方法是:根据需求,通过面向对象的分析方法提出一些模块,将这些模型作为基本的Java对象实现,然后编写一个基本的DAO接口,并给出Hibernate的DAO实现,使用由Hibernate框架实现的DAO类来实现Java类和数据库之间的转换和访问,最后由Spring完成业务逻辑。系统的基本业务流程是:在表示层,首先通过JSP接口实现交互界面,并负责发送Request和接收Response,然后根据配置文件(struts-config.xml)Struts委托收到的Request ActionServlet到适当的治疗行动。在业务层,Spring IoC容器的管理服务组件负责为Action Model组件和该组件的DAO提供服务以完成业务逻辑,并提供事务处理,缓冲池等容器组件以提高系统性能并确保数据完整性。在持久层中,依赖于Hibernate和数据库交互的对象映射,处理DAO组件请求的数据并返回结果。
图3-4 集成SSH框架的系统架构
4结论
使用SSH框架,不仅实现了View,Controller和Model的完全分离,还实现了业务逻辑层和持久层的分离。 无论前端有什么变化,模型层变化不大,数据库变化不会影响前端,提高了系统的可重用性。 由于不同层之间的耦合很小,有利于团队成员并行工作,提高开发效率。
致谢
本研究得到了北京科技创新团队计划(IG201106N),辽宁省重点实验室基金项目教育部(2008S002)和辽宁省博士基金(20091034)的支持。
参考文献
- Ren YC, Xing T, E X, “Software Development Process Management,” Beijing Jiaotong University Press, 2010.
- Li Gang, “Struts2 Definitive Guide,” Publishing house of Electronic Industry, 2010.
- Yang SJ, Shi ST, Niu ZM, Wang Q, “Application and Research of Project Planning Management in Software Development,” Computer Applications and Software, vol. 27, no. 11, pp. 111-116, 2010.
- Liu Kai, “Application study of Struts framework based on MVC design pattern,” Journal of Shenyang Institute of Engineering (Natural Science), vol. 6, no. 4, pp. 366-368, 2010.
- Li Gang, “Struts Hibernate Spring detailed application development,” Tsinghua University Press, 2007.
- Zhang Yi, “Research and Implementation of J2EE WEB Application Base on Struts Framework,” Masterrsquo;s degree of Southwest Jiaotong University, 2006.
- OuYang HJ, Ma GM, Ge M, “Research and Realization Web Applications Based on Struts Framework,” Computer amp; Digital Engineering, vol. 38, no. 3, pp. 19
- Dai JG, Liang B, Guo L, “Research on Data Initialization of Information System Based on Hibernate Framework,” Computer Knowledge and Technology, vol. 6, no. 7, pp. 1551-1553, 2010.
- Yang Huili, “Network management system based on Spring,” Microcomputer Information, vol. 23, no. 7-3, pp. 24-26, 2007.
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[19837],资料为PDF文档或Word文档,PDF文档可免费转换为Word