频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

基于Struts和Hibernate软件架构实现基金管理信息系统(1)

作者: 邓梅/张焕水 出处:计算机与信息技术  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2007-01-02 16:56
关 键 词:Mvc  Struts  Hibernate  基金
阅读提示:本文详细介绍了当前流行的开源框架Struts和Hibernate,将两者结合起来设计并实现了一个基于Web的基金信息管理系统。在MVC架构中,Hibernate实现模型部分(数据持久层),Struts实现视图和控制器部分,这种设计模式使系统在开发效率、可维护性和可扩展性方面都有很好的改进。
引言
 
开发过程中一个优秀的框架可以极大的提高开发效率。随着Web开发技术的日趋成熟,在Web开发领域出现了一些现成的优秀的框架,开发者可以直接使用它们,Struts与Hibernate就是两种比较成功的框架。Struts框架运用MVC模式开发使Web应用变得很灵活,但Struts在Model部分的实现并不理想,而O/R Mapping 产品hibernate将关系型数据库的数据对象化,可作为持久层的解决方案。Struts和Hibernate框架整合则很好地实现了控制流、业务调用、表示这三者的分离,使系统在开发效率、可维护性、可扩展性方面都有良好的改进。本文的基金信息管理系统表现层采用了Struts,数据持久层选择了Hibernate,业务逻辑层则用普通java对象,从而开发出功能强大而又灵活的基金信息管理系统。文中还着重阐述了基于Struts和Hibernate架构实现基金信息管理系统的方法和关键技术。

1、用Struts框架实现MVC

模型-视图-控制器(Model-View-Controller,简称MVC)是一种目前广泛流行的软件开发设计模式。“Model”代表应用的业务逻辑,“View”代表应用的表示,“Controller”提供应用的处理过程控制。通过这个设计模型,可以把应用逻辑、处理过程和显示逻辑分成不同的组件实现,这些组件可以进行交互和重用。
 
模型层负责表达和访问商业数据,执行商业逻辑和操作。在模型层变化的时候,它通知视图层,并提供后者访问自身状态的能力,同时控制层也可以访问其功能函数以完成相关的任务。视图层负责显示模型层的内容,它从模型层取得数据并指定这些数据如何被显示出来。在模型层变化的时候,它将自动更新。另外视图层也会将用户的输入传送给控制器。控制器负责定义应用程序的行为。它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
 
Struts框架是实现MVC模式的一个应用框架,它由一组相互协作的组件、Servlet以及JSP TagLib组成。Struts的核心组件有ActionServlet、Action、ActionForm、ActionMapping、ActionForward及TagLib、配置文件等。其中控制器由ActionServlet来实现,模型由Action和ActionForm来实现,视图则由JSP结合JSP TagLib来实现。

2、对象关系映射工具Hibernate

Hibernate是一种实现对象和关系之间映射(Object Relation Mapping)的框架。它对JDBC进行了轻量级的对象封装,使得Java程序员可以使用面向对象编程思维来操作关系数据库。在多层结构的应用中,业务层和数据层之间存在一个持久层,它负责应用到数据库的数据存储,数据的检索和更新。持久层的实现技术包括JDBC、实体Beans、JDO以及Hibernate等,但是JDBC中数据访问对象和SQL语句直接绑定在一起降低了可维护性,且不支持继承和多态。
 
EJB不支持继承和多态而且还需要额外的EJB容器。相比之下Hibernate则是一个非常好的选择,目前的应用系统大多使用关系数据库,在做设计和开发时又是面向对象的方式,这时就可以选用Hibernate来实现对象、关系之间的映射和数据的持久化。而且Hibernate拥有一种功能非常强大的查询语言(HQL),这种语言与SQL非常相似,便于掌握。
 
在应用Hiberante框架时,首先编写O/R映射描述文件,完成对象、关系数据库之间的映射。持久对象可以根据映射文件生成,然后编写业务逻辑类。这些JavaBean实现了具体的业务逻辑,也封装了对Hibernate的访问。Hiberante利用数据库以及其他一些配置文件如hibernate.properties,XML Mapping等,为应用程序提供数据持久服务。

3、基于Struts和Hibernate框架构建的基金信息管理系统

通过前面的介绍,Struts和Hibernate都具有自己的优点和不足,如果将两者结合起来,通过Struts技术来降低M—V—C各层之间的耦合性,而利用Hibernate架构来降低业务模型部分的开发难度。结合之后的好处是采用Struts和Hibernate结合的应用框架开发出来的信息系统无论在整体的架构上还是在局部的复杂业务模型中都得到了更低的耦合性,它们的灵活性与可维护性也得到了提高,从而消除了单独使用这些架构开发系统的不足。
 
本系统采用的Struts+Hibernate构架如图1所示[5]。在这个方案中,视图层是采用JSP技术结合Struts强大的TagLib来实现;业务层的核心部件是控制器,它由Struts的控制组件ActionServlet、ActionMapping及Action来实现,业务层还包含业务逻辑类,它由JavaBean来实现。当然,这些JavaBean里封装了与Hibernate的交互关系,业务层通过模型层来实现与数据库资源的交流,这一部分工作由Hibernate来做。最底层是关系数据库。
 
 
图1:系统的应用框架

4、使用Struts和Hibernate架构实现基金信息管理系统

随着技术的进步和企业管理要求的提高,办公自动化系统逐步发展到了以“知识管理”为核心的办公自动化系统,本项目的提出者为深圳市某一基金公司。
 
本系统在基金办公的自动化、网络化的基础之上,再实现基金公司内部及时通讯,提高基金公司员工的沟通能力;并在统一的系统平台下,连接基金公司各类信息系统和各类资源,是企业内部进行信息交流和管理的平台。本系统采用Struts和Hibernate框架结合进行Web应用程序开发,从而有效的保证系统的可交换性、可维护性、可扩展性和可移植性。
 
本系统主要由我的工作台、我的办公室、办公直通车、信息中心、研究平台、公司论坛、系统管理几个模块组成。系统的总体架构如图2所示。
 
采用Struts构建系统,系统中的每个模块都有一个自己的配置文档,以控制该模块的流程,每个模块除了业务逻辑不一样之外,采用Struts和Hibernate架构来实现模块的技术与过程完全一样。下面仅就研究平台模块中的基金净值子模块为例进行说明。用户登陆该模块,可以浏览公司的基金最新净值列表,并可根据基金代码、基金名称查询某支基金的历史净值和基金净值走势图。
 
 
图2:基金信息管理系统结构图


共2页: 1 [2] 下一页
【内容导航】

发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看52473次)
·UML类图详解 (查看46951次)
·Java编程开发手册 (查看25172次)
·UML统一建模语言 (查看24155次)
·C#技术开发指南 (查看22515次)
·Java编程开发手册 (1195个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (304个砖)
·PB开发教程 (220个砖)
·.NET开发手册 (217个砖)
·Java编程开发手册 (653个好)
·Java基础教程 (569个好)
·.NET开发手册 (251个好)
·PB开发教程 (209个好)
·Delphi开发技术手册 (174个好)
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章