计算机专业基于工作流的办公自动化系统的研究与实现.docx
- 文档编号:26278546
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:36
- 大小:1.41MB
计算机专业基于工作流的办公自动化系统的研究与实现.docx
《计算机专业基于工作流的办公自动化系统的研究与实现.docx》由会员分享,可在线阅读,更多相关《计算机专业基于工作流的办公自动化系统的研究与实现.docx(36页珍藏版)》请在冰豆网上搜索。
计算机专业基于工作流的办公自动化系统的研究与实现
摘要
互联网的出现与迅速发展,信息技术步伐的加快,使得企业面临着众多的挑战与竞争。
在竞争过程中,对于一个集团企业而言,对信息的掌握程度、信息获取是否及时、信息能否得到充分的利用、对信息的反应是否敏感准确,也越来越成为衡量一个企业市场竞争能力的重要因素。
这使得基于工作流的办公自动化系统得到越来越多的青睐。
办公自动化不仅兼顾个人办公效率的提高,更重要的是可以实现群体协同工作。
协同工作意味着要进行信息的交流,工作的协调与合作。
由于网络的存在,这种交流与协调几乎可以在瞬间完成,并且不必担心对方是否在电话机旁边或是否有传真机可用。
本文开发的这套系统是以解决客户投诉为题材的办公自动化系统,采用B/S结构和J2EE技术,并用现在比较流行的struts技术和mysql数据库,用户无需安装任何程序,可以使用浏览器使用其全部功能。
需要网络环境,数据完全存储在服务期端。
通过这个系统,实现了投诉信息的录入,查询,投诉的分配,解决,创建用户和发送email的功能。
系统的用户分为4类,第一类是投诉接待员,第二类是投诉解决员,第三类是经理,第四类是系统管理员。
本文讨论了软件开发平台及数据库的选取,以及软件的设计与实现。
关键词
办公自动化;工作流;J2EE;STRUTS;MYSQL
Abstract
TheemergenceoftheInternetandtherapiddevelopmentofinformationtechnologytoacceleratethepace,makingenterprisesarefacingmanychallengesandcompetition.Inthecourseofcompetition,agroupenterprises,theavailabilityofinformation,accesstoinformationistimelyandInformationcanbefullyutilized,therightinformation,thesensitiveaccurate,measuringisincreasinglybecominganenterprise'scompetitivefactors.Thismakesworkflow-basedofficeautomationsystemstobemorefavored.OAisnotonlycoverpersonalofficetoimproveitsefficiency,andmoreimportantlygroupscanworktogethertoachieve.Cooperativeworkwouldinvolvetheexchangeofinformation,coordinationandcooperation.Duetotheexistenceofthenetwork,communicationandcoordinationcanbealmostcompletedinaninstant,anddonothavetoworrythatiftheothersidenexttothetelephoneorafaxmachineavailable.
IdevelopedthissystemtoresolvecustomercomplaintsonthethemeofofficeautomationsystemusingB/Sstructure,J2EEtechnology,withstrutstechnicalandmysqldatabase.Usersdonotneedtoinstallanyproceduresandcanusethebrowsertouseallofitsfunctions.Thesystemneedsnetworkenvironment,andstoresdatainthefull-service.Thesystemhaveloggingfunction,inquiry’sfunction,solution’sfunction,createnewusersandsentemail’sfunction.Therearefourcategoriesinthesystem,includingcategoryofcomplaintsreceptionist,categoryistoresolvecomplaints,manager,andthesystemadministrator.
Thispaperdiscussesthesoftwaredevelopmentplatformanddatabaseselection,andsoftwaredesignandimplementation.
Keywords
officeautomation;workflow;J2EE;STRUTS;MYSQL
目录
摘要i
Abstractii
第一章绪论1
1.1什么是基于工作流的办公自动化系统1
1.2基于工作流的办公自动化系统的发展1
1.3客户投诉管理系统3
1.4本章小结3
第二章程序开发语言及开发工具简介4
2.1WEB开发技术概述4
2.2主要技术4
2.2.1什么是J2EE4
2.2.2什么是struts7
2.2.3什么是MVC8
2.3系统开发工具9
2.3.1myeclipse5.1.1GA9
2.3.2Tomcat5.011
2.3.3mysql5.011
2.4本章小结11
第三章系统需求分析12
3.1需求分析12
3.2本章小结12
第四章系统的详细设计13
4.1数据库设计13
4.2工作流设计14
4.3系统功能模块设计15
4.4程序目录设计15
4.5登录模块设计16
4.6查询模块设计17
4.7本章小结17
第五章系统功能模块实现18
5.1系统功能总体设计18
5.2软件代码设计说明20
5.2.1DAO的设计20
5.2.2ACTION的设计21
5.2.3FORMBEAN的设计21
5.2.4struts-config.xml的设计22
5.3本章小结23
第六章系统环境配置24
6.1系统环境的安装和配置24
6.6本章小结25
结论26
参考文献27
致谢28
第一章绪论
1.1什么是基于工作流的办公自动化系统
工作流:
工作流[1]是一类能够完全或部分自动执行的经营过程,根据一系列过程规则,文档、信息或任务在不同的执行者之间传递、执行。
办公自动化:
办公自动化[1](OA[2]:
OFFICEAUTOMATION)就是采用internet技术,基于工作流的概念,使企业内部人员方便快捷地共享信息,高效地协同工作;改变过去复杂、低效的手工办公方式,实现全方位的信息采集、信息处理,为企业的管理和决策提供科学的依据。
一个企业实现办公自动化的程度也是衡量其实现现代化管理的标准。
Internet/Intranet应用的普及和Web[3]技术的发展,为Web工作流办公自动化系统的实现提供了一个理想的平台,而基于Web的工作流管理服务为异地办公及跨企业的合作提供了良好的基础,采用Web技术已成为新一代工作流管理系统的主要特征。
这种基于工作流的办公自动化系统改变过去复杂、低效的手工办公方式,实现迅速、全方位的信息采集、信息处理,为企业的管理和决策提供科学的依据。
一个企业实现办公自动化的程度也是衡量其实现现代化管理的标准。
办公自动化不仅兼顾个人办公效率的提高,更重要的是可以实现群体协同工作。
协同工作意味着要进行信息的交流,工作的协调与合作。
由于网络的存在,这种交流与协调几乎可以在瞬间完成,并且不必担心对方是否在电话机旁边或是否有传真机可用。
这里所说的群体工作,可以包括在地理上分布很广,甚至分布在全球上各个地方,以至于工作时间都不一样的一群工作人员。
1.2基于工作流的办公自动化系统的发展
伴随着政府电子政务的建设、企业电子商务的建设,曾经淹没在Internet、.com中的一个名词——OA(办公自动化OfficeAutomation,简称OA)开始再次频频牵动人们的眼球,与MRPⅡ/ERP(企业资源计划)、CRM(客户关系管理)、PDM(产品数据管理)等系统一起掀起了新一轮政府、企业和组织的信息化浪潮。
办公自动化是70年代中期发达国家迅速发展起来的一门综合性技术。
我国的OA经过从80年代末至今10多年的发展,已从最初的以单机应用为基础的辅助办公产品,发展到今天以网络技术为依托的面向实际应用的现代办公系统。
办公自动化到底是什么?
由于谈论的角度不同,于是也出现了各种各样的说法。
我们认为,办公自动化就是要就是利用计算机技术、网络技术等综合技术的优势,建立一个集成的办公环境,使所有的办公人员能够更加轻松、高效地工作。
办公自动化,其重心在“办公”,面向事务,而非业务,因此办公自动化系统主要是针对公司或各种组织行政办公提出的解决方案。
随着计算机技术、网络技术的发展与普及,随着信息社会和知识社会等理念对现代管理的冲击,办公自动化处于不断发展与变革之中,大体上可以分为三个阶段。
第一代办公自动化只是以数据和文档处理为中心,提供面向单机的辅助办公产品,虽然完成了办公信息载体从原始纸介质方式向比特方式的飞跃,但信息仍然是高度孤立的。
第二代才可以称得上是办公自动化系统,它以工作流为中心。
数据库技术、网络技术、计算机支持协同工作CSCW[4](Computer-SupportedCooperativeWork)到随后的群件(Groupware)技术的发展使得办公自动化也发生质的飞跃。
分布式组件技术、三层计算模式、Internet技术、多媒体技术、基于工作流的分布式应用、LotusNotes、MicrosoftExchange等群件平台出现使得可以很方便地实现非结构化文档的处理、全文检索、工作流管理这些重要的OA功能,并且使软件的柔性构造功能将不断加强,工作流是这种办公自动化的最重要的表现。
这种方式以E-mail、文档数据库管理、复制、目录服务、群组协同工作等技术作支撑,让群体协同工作成为可能,彻底打破了早期办公自动化的“信息孤岛”,变成了“信息大陆”,实现了对人事、文档、会议等等的自动化管理。
目前,OA已经发展到了第三代,即:
以知识管理为核心。
与前两代相比,第三代OA是集信息处理、业务流程和知识管理于一体的应用系统。
强调以知识管理为核心,能够提供丰富的学习功能与知识共享机能,确保每一个使用者都能够随时随地根据需要向专家学习、向企业现有知识学习,使员工在办公自动化系统中的地位从被动向主动转变,从而在提升每个员工创造能力的过程中,提高企业与机构的整体创新和应变能力。
第三代办公自动化系统的核心是知识,实现的基础是知识管理技术,从而帮助企业从“怎样去做”的过程转到“知道主动解决”的过程,将办公自动化系统由模拟手工作业向改变并提高手工作业效率过渡。
1.3客户投诉管理系统
客户投诉管理系统是一个办公自动化软件的一个功能,是实现业务逻辑的一个模块。
基于工作流,把由接待员受到的投诉信息,随机的分配给处理员,并由处理员处理,投诉员也可把遇到的问题提交给经理,申请经理解决,如果客户不满意处理结果,也可上报经理,工作流设计如图1-1。
图1-1工作流设计
1.4本章小结
本章论述了什么是基于工作流的办公化系统,办公自动化的发展,还有简单论述了我开发的这套系统的功能。
阐述了为什么各个企业都要引进办公自动化系统和他跟传统上没有用这种信息技术的有什么优势。
第二章程序开发语言及开发工具简介
2.1WEB开发技术概述
随着Internet在全球的推广,越来越多的人开始上网,越来越多的服务开始在网络上悄然而生,这是J2EE[5]等面向WEB服务的技术也应运而生,随着经验的不断积累,人们在技术上提出了更加灵活强大的框架Structs。
Struts是作为ApacheJakarta项目的组成部分。
该项目的目标是为建立Javaweb应用程序而提供的一个开源框架,目前大家一般使用的版本为1.1,但也出现了1.2。
通过使用struts框架可以改进和提高JavaServerPages(JSPs)、Servlet、标签库以及面向对象的技术在web应用程序中的应用。
应用Struts框架可以减少你应用MVC(Model-View-Controller)设计模式的开发时间,从而提高开发效率。
2.2主要技术
2.2.1什么是J2EE
J2EE是美国Sun公司刚刚推出的一种全新概念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。
当今许多企业都需要扩展他们的业务范围,降低自身经营成本,缩短他们和客户之间的响应时间,这就需要存在一种简捷,快速的服务于企业,合作伙伴和雇员之间。
典型的说,提供这些服务的应用软件必须同企业信息系统[6](EIS)相结合,并提供新的能向更为广阔的用户提供的服务。
这些服务要具备以下的特点:
1.高可用性:
来满足现在的全球商业环境。
2.安全性:
保护用户的隐私和企业数据的安全。
3.可依赖性和可扩展性:
保证商业交易的正确和迅捷。
通常这些服务是由分布的应用程序组成的,包括前端数据端和后端数据源以及它们之间的一层或几层,这些中间层提供了把商业功能和数据与EIS相结合的功能。
这些中间层把客户端从复杂的商业逻辑中分离出来,利用成熟的INTERNET[7]技术使用户在管理上所花费的时间最小化。
J2EE正式降低了开发这种中间层服务的成本和复杂程度,因而使得服务可以被快速的展开,并能够更轻松的面对竞争中的压力。
J2EE通过定义一种标准的结构来实现它的优势,如下:
a.J2EEApplicationProgrammingModel:
一种用于开发多层次,瘦型客户用户程序的标准设计模型。
b.J2EEPlatform:
一个标准的平台,用来整合J2EE的应用程序,指定一系列的接口和方法。
c.J2EECompatibilityTestSuite:
一套兼容测试组件,用来检测产品是否同J2EE平台兼容。
d.J2EEReferenceImplementation:
用来示范J2EE的能力。
1.J2EE应用程序模型
J2EE是被设计为顾客,雇员,供应商,合作者提供企业级服务,这样的应用程序天生具有复杂性,他们要访问各种类型的数据并分发于大量的客户端。
为了更好的控制,管理这些应用程序,支持各种各样用户的商业功能要在中间层引入,中间层描述了一个被企业的信息技术部门紧紧控制的环境。
J2EE应用程序依靠于EIS[8]层来存储企业的商业数据。
这些数据和用来管理它的系统是企业中的核心。
最初,双层结构(client-server)应用程序模型许诺将提高伸缩性与更广阔的功能,但不幸的是,直接向用户提供EIS服务的复杂性和再每台用户计算机上安装和维护商业逻辑所引起的管理上的问题成了很大的限制。
而这些再双层结构中的限制在三层结构中已不存在了。
如今要求既开发服务的商业功能,还要开发访问数据库和其他资源的代码,这是很复杂的,因为每一种多层结构的服务器都有它自己的应用模型,因此组建一直富有经验的开发队伍将是困难的。
另外,随着服务规模的扩大,为了降低开支和加快响应速度,也要经常对其基层代码进行修改。
J2EE应用模型定义了一种建筑模型来让多层应用程序实现服务,并消除了以上的问题,提供了可伸缩的,易访问的,易于管理的方法。
J2EE应用模型把实现多层结构服务的工作划分为二部分:
开发者实现商业和表达逻辑,以及由J2EE平台提供的标准的系统服务。
开发者可以依赖于这个平台为开发中间层服务中遇到的系统级硬件问题提供解决方案J2EE应用模型为中间层应用程序提供了编译一次,任意运行的特点(writeonce,runanywhere)[9],这种标准模型最小化了培训开发人员的费用。
J2EE应用程序模型通过在建立多层应用程序中最小化其复杂程度,围简化和加速应用程序的开发迈出了重要的一步。
2.Java技术基础
J2EE应用程序模型起始于Java程序语言和Java虚拟机,他们提供的不断提高的便携性,安全性和开发人员能力的提高是应用程序模型的基础。
应用程序模型通常包括JavaBean[10]组件模型,JavaBean是的为普通功能编写基于Java技术的代码更加容易,利用JavaBean的开发工具可以可视的定制,组合这些组件。
3.安全性
当其他的应用程序模型需要在每个程序中有特定平台的安全性时,J2EE平台环境使在开发时安全约束便已定义了。
J2EE平台定义了一种标准的公开的存取控制规则,当程序在企业平台上开发时就已被程序师定义和解释了。
J2EE也需要提供一个标准的注册机制以便应用程序不用将这些注册机制和逻辑相混合,相同的工作要执行于大量的不同的环境中而并不需要改变源代码。
例如:
J2EE应用程序开发人员可以指定几个安全级别(如,user,superuser,administrator),于是他们写出代码来检查当前用户权限的级别当用户访问数据时。
在开发阶段,开发人员赋予多组用户适当的安全级,使应用程序能够容易的判断限制级在执行限制操作之前。
4.中间层
J2EE应用程序模型的一个主要优点便是在中间层的多层应用程序。
在J2EE平台,中间层商业功能是由企业JavaBean实现的。
这些企业Beans允许服务开发者集中于商业逻辑,并且让EJBServer处理传送稳定的,可升级服务的复杂工作。
JavaServerPages技术和Servlets向客户层提供了易于访问的Internet型服务的中间层功能。
Jsp技术使用户接口开发者更加容易的提供向任何浏览器用户提供动态页面的服务。
Servlets让基于Java技术的开发者有更大的自由来在Java语言中提供完全的动态服务。
5.客户层
J2EE平台支持几种类型的客户。
许多J2EE服务被设计为浏览器用户服务,这些服务通过动态生成Html页和表单来同客户端实现交互,而Jsp和Servlets是通过让这些商业数据通过某种方式格式化,使客户端更容易来同它工作。
这些客户端可以是运行于浏览器中的JavaApplet[11]和基于Java技术的程序。
要注意的是安全是多层结构的关键部分,在J2EE中安全性总是通过平台和管理员来解决的。
在大多案例中,服务方或客户方都不需要开发者与安全逻辑。
6.基于Html页的客户
在Java2中可以实现向用户的浏览器直接提供动态Html页的服务,在JavaServerPage技术中通过在Html页中插入Java代码动态生成页是一种很容易的事情。
在一些例子中,某些服务需要一些综合的代码,者可以通过从Jsp中调用JavaBean的方法来实现。
7.J2EE声明
J2EE应用程序模型的一个重要的目标就是使应用程序最小化。
实现这一点的一种方法是提高在J2EE平台上运行普通任务的负担,这些普通任务包括强制一个应用程序的安全目标,执行它的交易处理,链接它所需要的组件。
J2EE提供了一种简单的,公开的方式来说明这些行为。
这些说明被分散的放在各部分代码中和开发描述中,开发描述是应用程序包的一部分,这些基于xml的说明使应用程序开发者不用修改任何组件就可以改变应用程序的作用。
2.2.2什么是struts
1.Struts的起源
Struts最早是作为ApacheJakarta项目的组成部分问世运做。
项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages(JSPs)、Servlet、标签库以及面向对象的技术水准。
当前最高发行版本为Struts1.0.2,可以到http:
//jakata.apache.org/Struts下载。
Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。
它的目的是为了帮助你减少在运用MVC设计模型来开发Web应用的时间。
你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。
2.Struts工作原理
MVC即Model-View-Controller的缩写,是一种常用的设计模式。
MVC减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。
MVC的工作原理,它将Servlet和JSP标记(属于J2EE规范)用作实现的一部分。
Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。
Struts的工作原理。
控制:
有一个XML文件Struts-config.xml,与之相关联的是Controller,在Struts中,承担MVC中Controller角色的是一个Servlet,叫ActionServlet。
ActionServlet是一个通用的控制组件。
这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点。
它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子类)。
另外控制组件也负责用相应的请求参数填充ActionFrom(通常称之为FormBean),并传给动作类(通常称之为ActionBean)。
动作类实现核心商业逻辑,它可以访问javabean或调用EJB。
最后动作类把控制权传给后续的JSP文件,后者生成视图。
所有这些控制逻辑利用Struts-config.xml文件来配置。
视图:
主要由JSP生成页面完成视图,Struts提供丰富的JSP标签库:
Html,Bean,Logic,Template等,这有利于分开表现逻辑和程序逻辑。
模型:
模型以一个或多个javabean的形式存在。
这些bean分为三类:
ActionForm、Action、JavaBeanorEJB。
ActionForm通常称之为FormBean,封装了来自于Client的用户请求信息,如表单信息。
Action通常称之为ActionBean,获取从ActionSevlet传来的FormBean,取出FormBean中的相关信息,并做出相关的处理,一般是调用JavaBean或EJB等。
流程:
在Struts中,用户的请求一般以*.do作为请求服务名,所有的*.do请求均被指向ActionSevlet,ActionSevlet根据Struts-config.xml中的配置信息,将用户请求封装成一个指定名称的FormBean,并将此FormBean传至指定名称的ActionBean,由ActionBean完成相应的业务操作,如文件操作,数据库操作等。
每一个*.do均有对应的FormBean名称和ActionBean名称,这些在Struts-config.xml中配置。
2.2.3什么是MVC
MVC是一种目前广泛流行的软件设计模式,早在70年代,IBM就推出了Sanfronscisico项目计划,其实就是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机专业 基于 工作流 办公自动化 系统 研究 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)