欢迎来到专业的新思文库网平台! 工作计划 工作总结 心得体会 事迹材料 述职报告 疫情防控 思想汇报 党课下载
当前位置:首页 > 范文大全 > 教案设计 > 正文

基于Struts2、Hibernate和Ajax的办公自动化系统的设计与实现

时间:2022-11-18 18:35:06 来源:网友投稿

摘 要 办公自动化系统在现代企事业单位中处于十分重要的地位,它能帮助工作人员高效的管理企业内部的各种日常事务。通过对某事业单位办公自动化系统需求的分析与研究,运用Struts2、Hibernate和Ajax的框架技术,以SQLserver作为数据库,设计并实现了基于B/S架构的办公自动化系统。通过实施,系统提高了该事业单位的日常办公效率。

关键词 Struts2;Hibernate;Ajax;办公自动化系统

中图分类号:TP315 文献标识码:A 文章编号:1671-7597(2013)11-0040-02

办公自动化系统是利用计算机技术提高办公的效率,进而实现办公自动化处理的系统。它促进了传统办公模式的革新,从而形成了一种全新的现代化办公模式。本系统以天津市某事业单位的办公自动化系统需求为基础,基于JAVAEE平台和面向对象的开发思想,采用Struts2框架、Hibernate持久化框架和Ajax技术,结合相应的组件或工具如:ECOTree、YmPrompt、FCKeditor、JasperReports等,开发出一套适合该事业单位的办公自动化系统。

1 系统架构

1.1 系统架构简介

该系统主要以Struts2框架作为主框架,以Hibernate框架作为系统数据持久化的工具。同时结合Ajax技术来实现的即时、高效的办公自动化系统。

1.2 相关框架与技术

1)Struts2框架介绍。Struts2框架是在Struts1和WebWork技术基础上产生的,采用拦截器的机制实现用户的请求。其主要分为模型(Model)、视图(Viewer)和控制器(Controller)三部分,主要的设计理念是通过控制器将表现逻辑和业务逻辑解耦,以提高系统的可维护性、可扩展性和重用性。

2)Hibernate框架介绍。Hibernate是一个开源的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,以便在开发过程中,使开发人员专注于开发,从而提高开发效率。Hibernate的HQL(Hibernate Query Language)查询数据语言是根据SQL面向对象的最小的扩展来设计的,在对象和关系领域间提供了一个交互的桥。

3)Ajax概述。Ajax即“Asynchronous JavaScript and XML”(异步JavaScript和XML)。它并不是一种新技术,而是将Javascript、XML、DOM、XSLT等技术巧妙的融合在一起,来创建交互式网页应用的技术。其核心思想是在客户端与服务器端增加一个中间层(Ajax引擎)来实现异步局部刷新。

2 系统设计

2.1 系统简介

该系统协助工作人员处理日常办公事务,优化了该单位的内部工作流程,减少了繁琐的劳动。通过该系统加速了单位内部信息的搜集与传播,摆脱时间和地域限制,使其管理流程化、精细化、准确化。

2.2 系统功能模块设计

该办公自动化系统包含了9个模块,分别是系统管理模块、基础资料管理模块、资源管理模块、通知管理模块、稿费管理模块、日程管理模块、公文管理模块、考勤管理模块以及交流工具,如图1所示。

1)系统管理模块。操作该模块的主要是系统管理员。系统管理员登录系统后,对系统中某些模块的参数进行设置,这里包括公文类型的设置、公文流程的设置、会议室时间的设置、日程提醒时间设置以及数据备份。

公文类型的设置:将公文分成不同的类型,可以方便的为不同类型的公文设置不同的审批流程,该部分包括公文类型的增加、删除、修改等操作。

公文流程设置:该部分实现的是设置公文的审批流程。主要包括流程的设置、复制、修改、删除等操作。流程设置过程中主要包括两种逻辑关系:OR(或者)与AND(并且)。其中“OR”表示在某一审批环节中若干审批者中的任何一个人审核该公文即可,审核通过后公文即可进入下一审批环节;“AND”表示在某一审批环节中公文必须通过所有审批者才能进入下一审批环节。如下所示:B—AND:员工甲—OR:员工乙、员工丙—AND:员工丁、员工戊—E。其中“B”表示流程的开始,“E”表示流程的结束,审批环节以“—”分隔。则该审批流程表示公文先经过员工甲审批,然后由员工乙或员工丙其中一人审批,最后该公文经过员工丁的审批与员工戊的审批。

会议室时间设置:该部分是对会议室使用的时间进行设置。根据正常工作时间,系统默认设定为8:30~10:00,

10:30~12:00,1:30~3:00,3:30~5:00四个时间段。系统管理员可以根据需要自行设定使用时间段。

日程提醒时间设置:该部分设置日程管理模块中提前提醒的时间,比如提前3天提醒。

数据备份:定期为数据库进行备份。

2)基础资料管理模块。该模块是由具有相应权限的人员进行操作的。主要是针对系统中的一些基础资料进行维护。主要包括3部分:权限管理、员工管理以及部门管理。

权限管理:系统主要是按照人员—角色—权限的方式进行管理,人员与角色是一对一的关系、角色与权限是一对多的关系,即:每一位员工对应一种角色,每一种角色包含若干权限。该部分主要完成对角色的增加、删除、修改以及为角色赋予权限的工作。

员工管理:该部分是对员工的相关信息进行维护。例如:姓名、工号、密码、所在部门、职务、联系方式、电子邮箱、角色等等。

部门管理:对单位内部各部门信息进行维护以及单位组织结构图的生成。

3)资源管理模块。在该模块中,具有相应权限的员工可以对单位内部的相关资源进行维护以及使用。包含:会议室管理和用车管理两部分。

会议室管理:该部分包括会议室相关信息的维护、会议室申请以及会议室占用时间段的查询。

用车管理:该部分包括单位车辆信息的维护和用车申请。

4)通知管理模块。具有相应权限的员工可以利用该模块进行公告的发布、置顶以及公共文件的上传,例如一些文件模板、办公资料等等。

5)稿费管理模块。事业单位内部通常会对在期刊、报纸上发表文章的员工进行奖励。因此可在该模块中进行已发表稿件信息的上传、统计与计算奖励的金额。

6)日程管理模块。主要针对未来某一时间段做安排。该部分包含提前n天提醒功能(n在“系统管理模块”中的“日程提醒时间设置”部分进行设置)、日程的添加、修改、查询及删除。

7)公文管理模块。该模块主要包含发文管理、收文管理、公文暂存、审批、查阅审批进程、查询历史记录等等。其中公文的审批流程在系统管理模块中设置。

8)考勤管理模块。该模块主要包含今日考勤、补写考勤、修改考勤、查看考勤、考勤记录表以及统计考勤等功能。

9)交流工具。该模块主要包含日常办公过程中一些实用的交流工具。如聊天室、留言板、发送邮件、及时消息等。

3 系统设计难点与实现

3.1 系统设计难点

系统在设计开发过程中遇到的主要难点是数据库的设计。数据库的设计在整个应用系统的开发过程中具有举足轻重的地位,数据库设计的好坏直接关系应用系统的开发能否顺利进行[。本系统在设计数据库的过程中,一方面要满足数据库设计的合理性;另一方面要尽可能满足某些组件或工具对数据组织结构的要求,以便使系统开发高效的进行。

由于本系统涉及的数据表比较多,这里将开发过程中比较复杂的几个模块的数据表及相关说明列出:

1)字典表。用于维护基础信息。包括:职务、权限、稿件的版面信息、刊物类别、会议室使用时间段、考勤类型(如:病假、事假、出勤等)、公文类型等等。字典表:组号,明细号,名称,描述,其他信息,是否删除。

2)部门表。该表用于维护部门基础信息以及组织结构图的展示与维护。部门表:部门号,部门名称,部门简介,父节点,子节点,层编号,顺序号,族谱,是否删除。

3)员工表。对员工信息进行维护。员工表:工号,密码,姓名,电话,手机号,部门号,职务_组号,职务_明细号,角色号,是否删除。

4)角色表。对角色信息进行维护。角色表:角色号,角色名,描述,是否删除。

5)角色_权限表。该表维护角色和权限的关系。角色_权限表:角色号,权限_组号,权限_明细号。

6)公文流程表。对公文审批流程进行定义与维护。公文流程表:流程号,流程名称,公文类型_组号,公文类型_明细号,流程,描述,是否删除,是否启用,流程建立者,建立时间。

7)公文表、公文流程表以及审批明细表。公文表:编号,部门,工号,流程号,紧急程度,公文名称,公文附件,状态,审批节点号,节点类型,是否删除。

8)审批明细表。对公文审批过程进行追踪。审批明细表:公文编号,审批人_工号,节点号,审批状态,审批意见,审批时间,是否终结点。

9)日程表与日程明细表。用于存储日程相关信息的数据。

日程表:日程号,名称,开始时间,结束时间,编制部门,编制时间。

日程明细表:日程号,明细编号,日期,时间,地点,工作内容,参加人员。

10)考勤表。记录工作人员的考勤信息。考勤表:编号,工号,日期,上午,下午,考勤员,审核,审核人,审核时间,是否删除。

3.2 系统实现

系统采用SQL Server2005数据库进行数据支持,以Tomcat6.0作为服务器,在Struts2、Hibernate框架的基础上,结合Ajax技术进行开发。在开发过程中为保持界面整体风格一致,用YmPromp组件的作为系统的提示框和弹出窗体,FCKeditor作为文字编辑器,JasperReports作为系统报表开发工具。系统主界面如图2所示。

4 结束语

本文以某事业单位的办公自动化系统需求为基础,结合当前主流的Struts2、Hibernate框架以及Ajax技术开发出一套办公自动化系统,该系统在时间上和空间上优化该事业单位的业务流程,节约了成本以及资源,可以即时、动态的响应企业的相应的管理变化。该系统具有良好的可伸缩性、可移植性以及平台无关性。

参考文献

[1]王学伟.基于SSH2和Fireflow工作流的办公自动化系统的设计与实现[D].武汉:武汉科技大学,2011.

[2]郜磊.基于STRUTS的OA办公系统的设计与实现[D].吉林:吉林大学,2011.

[3]刘静,刑藏菊,龚凡蕾.基于SSH的高校MBA管理系统设计与实现[J].计算机应用于与软件,2011,28(11):261-263.

[4]董海燕,王卫东.基于JSF、Spring和Hibernate的技术资料综合管理系统设计[J].计算机应用与软件,2012,29(5):212-214.

[5]周旋,王丽芳,蒋泽军.基于Ajax的即时消息系统的设计与实现[J].科学技术与工程,2009,9(2):446-450.

[6]王珊,萨师煊.数据库系统理论[M].北京:高等教育出版社,2006:201-203.

[7]李丛.基于B/S架构的办公自动化系统的设计与实现[J].计算机与现代化,2012(10):163-167.

作者简介

李明(1986-),男,天津人,天津财经大学管理信息系统系硕士研究生,研究方向为客户关系管理、决策支持系统。

张鹏(1988-),男,天津人,天津蓝创科技有限公司研发工程师。

推荐访问:办公自动化系统 设计 Struts2 Hibernate Ajax