基于基于Struts和和Hibenate的遥感信息发布系统研究的遥感信息发布系统研究
摘摘 要要 本文分析了传统Web信息系统的缺点,详细阐述了MVC设计模式思想,剖析了当前被广泛应用的开源设计框架:Struts
和Hibernate的工作原理,基于以上分析提出将二者结合起来实现优势互补共同开发遥感信息发布系统的思路,最后结合了
DAO和工厂设计模式实现了具有良好可扩展性、实用性和可维护性的遥感信息发布系统。
关键词关键词 遥感数据分发;MVC设计模式;Struts框架;Hibernate映射工具
0 引言引言
随着Internet技术的飞速发展,Web信息系统被广泛应用。遥感信息发布系统,就是指基于Web的遥感数据信息发布系统。
随着时间的推移,传统的Web信息系统暴露了很多问题,如页面逻辑、业务逻辑和数据逻辑杂糅在一起,系统的耦合性高,
修改、维护困难,扩展性差。为克服以上问题,新的开发方法也不断被提出来,如软件分层思想,MVC设计模式等等。
本文就如何构建弱耦合性,可维护和可扩展的遥感信息发布系统等问题展开探讨。根据当前Web技术的发展,提出了采用
Java环境下实现MVC设计模式的Struts框架和实现数据持久化的Hibernate框架结合起来开发遥感信息发布系统,提高系统的
实用性、灵活性,克服传统Web系统的缺点。
1 MVC设计模式和开源框架设计模式和开源框架
1.1 MVC设计模式设计模式
MVC设计模式是一种著名的用户界面软件开发设计模式,它是模型-视图-控制器(Model-View-Controller)缩写。
MVC设计模式最早由Xerox在20世纪八十年代为Smaltalk-80语言发展提出的,但是这种设计思想并没有局限于该语言,而是
被广泛地应用到了其他面向对象的编程语言中。
图1 MVC模型组件关系图
在MVC设计模式中,它把应用程序分成了3个核心部分,原理图如图1所示。
⑴ 模型(Model)
模型封装了用户数据和处理数据的业务逻辑,体现了应用程序的当前状态,而且可以将用户数据状态的变化提供给多个显示
该数据的视图共用。模型是应用程序的核心。
⑵ 视图(View)
视图提供了用户界面,是用户和应用程序的交互的窗口,既接受用户输入,也把模型数据状态显示给用户,但是视图不负责
任何业务逻辑处理,仅仅是将用户输入数据传递给控制器或将模型数据显示给用户。
⑶ 控制器(Controller)
控制器连接了模型和视图,根据用户请求判断将请求交给哪个模型来完成,然后调用视图来显示模型处理后的用户请求结
果。
MVC设计模式将应用程序进行了分层,视图和模型通过控制器连接,从而减少了用户界面和业务逻辑之间的耦合,使程序设
计更加清晰、灵活,也提高了软件的可扩展性、可维护性。
1.2 Struts框架框架
Struts框架是Apache开源软件联盟(www.apache.org)的一个开源项目——Jakarta Struts Framework。Struts框架继承了
MVC设计模式的特性,遵守了J2EE的Servlet、JSP等技术规范,并且根据J2EE的特点做了相应的变化和扩展,是J2EE体系
架构的一种轻量级实现。作为一款优秀的Java Web应用程序的开发框架,Struts框架凭借其清晰性、灵活性,成为当前最为
广泛应用的轻量级Java Web 开发框架。
Struts框架实现了MVC设计模式,其工作原理图如图2所示: