SSH架构档案管理系统设计
随着高校档案管理的复杂化和网络技术的发展,基于Web的档案管理系统具有很大的使用价值。研究档案管理系统软件,提出其设计开发标准的规范化建议,是为了促进档案系统软件开发设计的规范化与标准化,避免盲目设计与开发,节省研制成本,减少经济损失,扩大软件适用规模,达到档案管理的自动化、统一化,提高档案工作效率,保证档案管理安全性、通用性、可靠性,进而促进档案信息化的发展。
一、架构技术分析
1.Struts简介
Struts是一个为开发基于模型(Model)-视图(View)-控制器(Controller)(MVC)模式的应用架构的开源框架,是利用Java Servlet和JSP构建Web应用的一项非常有用的技术。
2.Hibernate
Hibernate是一个免费的开源Java包,它使得与关系数据库打交道变得十分轻松,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。
3.Spring
Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
4.SSH整合后的特点
(1)大大降低了开发成本。SSH 的架构是基于Struts、Spring和 Hibernate开源框架开发设计的',所以它在技术成本上会很低,又由于应用框架技术可以更清晰的划分开发过程中每个人的工作任务,从而降低了人力成本。
(2)低耦合,增强了系统的可扩张性。对于传统的ASP和PHP等脚本站点技术,将整个站点的业务逻辑和表现逻辑都混杂在ASP和PHP页面里,从而导致页面的可读性相当差,可维护性非常低。即使需要简单改变页面的按钮,也不得不打开页面文件,冒着破坏系统的风险,因而具有良好的可扩展性。
(3)缩短项目的开发周期。使用框架技术可以避免反复开发的问题。无形中减少了开发过程中的编写代码量,提高了开发速度,缩短开发周期。
(4)重用性。为了避免重复开发,降低成本,我们希望能够重用以前的代码和设计。重用是我们不断追求的目标之一,但事实上,做到这一点不是很容易。
二、系统功能需求
于档案管理管理系统来说,总体上的目标就是提高档案管理的效率,将大量复杂的统计,重复的事务性操作等交给系统自动处理,在提高效率的同时,也减少了人工的投入和人工操作可能产生的错误。本系统的开发依据J2EE分层的系统框架,提出基于SSH(Struts+Spring+Hibernate)集成框架的档案管理系统的设计与实现。基于SSH的档案管理系统开发要实现的具体功能如下图所示。
三、系统实现
1.Web应用层实现
表示层主要包括系统和用户交互的页面,它的主要功能是收集用户的输入、验证和转换输入数据,并把转换后的数据传递给业务逻辑层。另外,表示层还发挥呈现数据、控制页面导航,以及处理国际化编程的功能。该层使用Struts框架来实现,Struts为基于Java的应用提供一种用户界面开发框架以及应用逻辑和业务逻辑的连接。它通过一个控制器ActionServlet提供Web应用程序生命周期管理,而且能够在服务器上处理客户端事件、输入验证等用户界面问题。
应用层Struts的设计主要包括用户Struts界面以及与之协作的事件Action的设计。档案管理系统设计的Action主要有:LoginAction、MenuAction、OrgAction、ParaAction、RoleAction、UserAction、DoucumentInfoAction、BorrowInfoAction
2.业务逻辑层实现
业务逻辑层使用Spring框架来实现业务逻辑处理,可以实现与各种框架良好的集成。同时Spring的IOC的依赖注入功能给开发人员减轻了负担,使程序代码逻辑结构清晰,实现组件间的松散耦合,加快开发进度。业务逻辑层主要定义与应用层组件事件关联的类和接口,用于向上层提供处理事件的服务,主要包括表示事件域处理方法的Service接口和Service实现类。
由于系统中的DAO对象紧密关联,因此采用Facade模式将DAO对象封装起来,应用层在使用业务逻辑层的服务时,仅仅与业务逻辑的Service接口发生联系,无需知道业务服务组件的具体实现,也无需了解底层的DAO对象。
3.持久层实现
数据持久层使用Hibernate持久化框架,也是使用接口与实现分开的方式。这样可以在持久层使用多种持久化技术。持久层主要定义应用程序通过具体的类与数据库交互。遵循系统架构图,持久层的设计将使用 Facade模式定义系统中各个模块的业务入口Facade接口,并定义它的实现类Impl,通过接口得到具体业务的DAO实现。通过DAO和对应模式的Domain Object,就能对数据库进行增删查改动作。
4.数据库设计
系统数据库的设计实现,对系统的应用具有很重要的意义。根据档案管理系统的实际数据量考虑,采用了Mysql数据库。Mysql是一个精巧的SQL数据库管理系统,以操作简便著称。由于其强大的功能、丰富的应用编程接口以及精巧的系统结构设计,在基于数据库的应用软件开发总得到了广泛的应用。
作为一个数据库管理系统,MySQL是客户机/服务器模式的分布式系统,由SQL服务器、客户端、管理工具和应用编程接口等一整套工具组成。它的平台无关性优点使其能在多个操作系统上运行。此外,MySQL还是多线程的,不仅具有运行速度快,可处理大批量数据等特点,还支持多CPU使用。
档案管理系统共建立了7张数据表:t_user(用户表)、t_channel(菜单表)、t_news(新闻表)、t_org(机构信息表)、t_para(参数信息表)、t_info(档案信息表)、t_borrow(档案借阅信息表)。
本文采用了基于Java平台的多层架构,通过运用Struts技术,Spring技术,Hibernate技术,建立一套可伸缩性高的系统开发架构。同时,由于接口的采用,使系统可以很好地满足与其它系统集成的需要,使利用计算机系统和网络服务系统的档案管理更加方便。
【SSH架构档案管理系统设计】相关文章: