毕业设计-公文流转说明书.doc

上传人:可****阿 文档编号:93371582 上传时间:2023-07-03 格式:DOC 页数:41 大小:2.11MB
返回 下载 相关 举报
毕业设计-公文流转说明书.doc_第1页
第1页 / 共41页
毕业设计-公文流转说明书.doc_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《毕业设计-公文流转说明书.doc》由会员分享,可在线阅读,更多相关《毕业设计-公文流转说明书.doc(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、学校代码: 10128学 号: 040201007 本科毕业设计说明书(题 目:基于Struts的公文流转系统分析与实现学生姓名:纪永学 院:信息工程学院系 别:计算机系专 业:计算机科学与技术班 级:计算机04-1指导教师:苏依拉 副教授钱庭荣 工程师二 八 年 六 月内蒙古工业大学本科毕业设计说明书摘 要公文流转系统是办公自动化系统的核心,在公文流转系统中工作流的基础上,对目前国内外公文流转用到的相关技术进行了总结,最后对公文流转的发展方向进行了展望。公文流转是OA的核心,也是实现无纸办公的重要标志。政府和企事业单位正在积极采用办公自动化系统提高办公效率。公文流转子系统作为所有OA的公共构

2、件,它利用计算机网络的高速迅捷和计算机控制的严格准确性实现公文的处理,对目前传统公文处理而言,很大程度上提高了公文处理的效率和准确性。本文主要讲述了一个基于工作流的公文流转的系统的分析与实现。本系统基于B/S,使用J2EE中的多种规范和Struts编写、后台数据库为Oracle9i。从软件的需求分析阶段到具体的编码实现阶段,本文都做了详细的介绍。本文中所设计的公文流转系统,主要有两个大的模块组成:一是会员模块,会员通过前台系统查看自己的相关的信息,选定文件处理的工作流程。另一个是管理员后台管理模块,管理员登录到本系统后,即可对本系统进行管理,包括工作流程的设定,管理用户信息等。关键词:公文流转

3、;办公自动化;工作流AbstractThe archives circulation system is the office automation systems core, in the introduction archives circulation system in the work classs foundation, the correlation technique which used to the present domestic and foreign archives circulation has carried on the summary, finally ha

4、s carried on the forecast to the archives circulations development direction.The archives circulation is the OA core, also realizes the paperless work important symbol. The government and the Enterprises and institutions are using the office automation system to raise the office efficiency positivel

5、y. The archives circulation subsystem takes all OA the public component, it uses the computer network high speed fast and the computer control strict accuracy realizes archives processing, speaking of the present traditional archives processing, to a great extent raised the archives processing effic

6、iency and the accuracy.This article mainly narrated with realizes based on the work classs archives circulations systems analysis. This system based on B/S, uses in J2EE many kinds of standards and Struts compiles, the backstage database is Oracle9i. Realized the stage from the software initial dema

7、nd analysis stage to the concrete softwares code, this article has made the detailed introduction. In this article designs the archives circulation system, mainly has two big module compositions: First, the member module, the member examines own related information through the foreground system, the

8、 select files processing work flow. Another is the manager backstage administration module, after the manager registers this system, then to this system carries on the management, including work flows hypothesis, manages the user information and so on.Key words: Archives circulation; Office automati

9、on; Work class内蒙古工业大学本科毕业设计说明书目 录引 言1第一章 相关技术发展综述21.1 公文流转的发展趋势21.2 国内外相关技术21.2.1 基于Lotus Notes的公文流转系统31.2.2 基于Exchange Server的公文流转系统31.2.3 基于Windows .Net框架的公文流转系统31.2.4 基于JAVA的公文流转系统31.3 工作流的基本概念和特点41.3.1 工作流的概念41.3.2 工作流程的特点41.4 小结4第二章 开发技术与系统分析52.1开发工具52.2开发技术52.3 开发技术简介52.3.1 java简介52.3.2 Servle

10、t技术简介52.3.3 JSP技术简介62.3.4 表达式语言72.3.5 JavaBean简介72.3.6 Hibernate技术简介72.3.7 Struts 技术简介82.3.8 AJAX(Asynchronous JavaScript and XML)技术简介102.4小结11第三章 需求分析与系统设计123.1需求分析123.1.1系统需要解决的问题123.1.2系统功能需求描述123.2 系统总体设计133.3 可行性研究143.3.1 可行性研究的必要性143.3.2 可行性143.4 数据描述153.5 系统详细设计173.6 各模块的详细设计173.6.1基本信息模块173.

11、6.2收发文件管理模块183.6.3短信息管理模块183.6.4好友管理模块193.7系统中数据库的设计19第四章 公文流转系统软件实现244.1 高级发文管理界面实现244.2 设计工作流254.3 公文收件管理264.4 查看工作进展274.5 查看工作进展284.6 查看工作进展29第五章 运行与测试305.1 软件测试的目的和原则305.2 测试环境315.3软件的运行与安装315.4运行和维护31结 论33参考文献34谢 辞35图表清单图2-1 JSP运作模式7图2-2 Struts(MVC)模式9图2-3 Struts的工作流程10图3-1 系统用例图15图3-2 系统包图15图3

12、-3 系统活动图16图3-4 系统类图16图3-5 系统功能模块17图3-6 详细模块设计图17表3-1 MemberInfo19表3-2 Items20表3-3 Rout20表3-4 actor20表3-5 actoruser21表3-6 tasklist21表3-7 MemberSpace21表3-8 GradeRecord22表3-9 Point Record22表3-11 MessageRecord23表3-12 FriendList23表3-13 BlackList23图4-1 系统主界面24图4-2 设置工作流图25图4-3 审批申请界面26图4-6 程序结构29图5-1 测试的基

13、本层次3035引 言随着信息技术在我国的普及,各类信息化技术手段在政府企业中不断得到应用,极大地提高了政府企业的办公效率,对行政办公模式的变革产生了深远的影响。日常公文处理在政府机关或者企业的工作中是一项繁杂而重要的工作,在工作中,往往会因为个人文书管理不当,产生文件遗失,过时未批,或者出差在外,无法及时批阅等情况。传统的数据文件是一份份厚重的文件档案及纸制文件,要查询一份历史数据就要到文件的归档部门,再去查询归档的年份,找到归档的档案,既耗时又烦琐。因此,需要开发公文流转系统,让人员从长期繁杂的办公事务中解放出来,提高工作效率,降低行政成本,实现办公自动化。办公自动化(OA)是20世纪70年

14、代兴起的基于数据库技术、网络技术、软件工程技术发展起来的一门技术科学。目前,OA已经从最初的汉字输入、文字处理、排版编辑、查询检索等单机应用软件逐渐发展成为现代化的网络办公系统。Java具有很强的数据处理功能和稳定性,在大规模数据处理和安全性方面占优势,适合开发浏览器形式的应用系统,J2EE的开发模式适合工作流性质的软件开发,有比较强的灵活性。由其实现的公文流转功能主要表现在一些有Java开发的办公自动化系统中。目前使用的Struts框架及MVC模式,结合JSP开发出来的公文流转系统在市场上具有很强的挑战性。根据工作流管理联盟 (WFMC) 的定义,工作流是一类能完全或部分自动执行的经营过程,

15、且能根据一系列的过程规格、文档、信息或任务在不同的执行者之间进行传递和执行。公文流转的模式一般可归纳为以下四种:直流模式,分流模式,合流模式和回流模式。在文章中会详细介绍。 第一章 相关技术发展综述1.1 公文流转的发展趋势事实上,现在的办公已经不再是简单的文档处理,不再是单纯的行政事务了。现代办公的任务是提高整个企业的运作效率,进而提高企业的核心竞争力。知识管理可以帮助企业解决知识共享和再利用的问题。因此将来的办公自动化系统的核心是知识,实现的基础技术是知识管理。同样现在以及未来的公文流转系统,也需要在现有的办公自动化系统的发展基础上得以进一步的发展。纵观现在国内外的公文流转系统以及办公自动

16、化系统中的公文流转,能够轻易的发现未来的公文流转系统朝着以下几方面发展。(1)集成。现代企业和许多政府除了拥有公文流转系统之外,还有许多其他的管理系统。由于大量的信息孤岛式的建设,他们之间很少能够紧密协调起来。就前端来说,经常需要进行退出一个系统然后再进入另一个系统,并且发现数据常常不一致,可以比较肯定地说,目前中国具有信息系统的企业和政府绝大部分都是这种情况。他们往往具有多个供应商提供的多个系统,但很少集成。也有少数企业采用ERP套件,集成了其中的一部分,全部集成的企业凤毛麟角,也可能正在产生中。因此,现在或者未来所需的公文流转系统是需要一个能够集多种功能于一体的系统。(2)完全基于Web。

17、从目前用户的使用技能和接受程度以及系统的维护成本考虑,Web界面最容易接受。另外从集成方面来讲,必须采用人人支持的Web标准如HTML,JavaScript,ActiveX,IIOP,DHTML,XML,JAVA等才能在一个界面下容纳,否则的话,技术难度就会导致集成不可能实现。(3)流程优化。对于流程,熟悉公文流转系统的人就会想起收发文的流程。那是非常完善的、符合层级结构的、效率低下的流程,对于如何优化该流程,如果基于原有的思维模式和知识领域,就无法获得更多。必须基于现代的流程管理思想对目前的业务流程进行重组。 (4)基于知识。进入知识经济时代,人人都是知识工作者,要求公文流转系统必须具有知识

18、内涵,或者说是基于知识。1.2 国内外相关技术目前,国内外开发公文流转的技术多种多样,下面我们主要介绍Lotus Notes、ASP、Visual Studio、JAVA等主要的技术手段以及它们具有的不同特点和在不同的领域发挥的不同优势。1.2.1 基于Lotus Notes的公文流转系统Lotus Notes被视为最成熟的公文流转平台,由于其本身具有强大的工作流(workflow)设计能力,与公文流转复杂的工作流相适应,因而成为大型公文流转系统开发的首选技术手段。利用Lotus Notes既可以实现B/S模式的公文流转系统,也可以使之适应C/S的应用模式,其完善的文档数据库和权限管理系统为公

19、文流转的顺利实现提供了强有力的保障。但Lotus Notes的灵活性较差,外在表现形式单一,开发成本较高。1.2.2 基于Exchange Server的公文流转系统Exchange Server与Lotus Notes有相似之处,都具有强大的工作流设置能力,在早期的办公自动化系统中,Exchange Server 被广泛使用,在客户端使用OutLook等电子邮件系统进行操作,但是在使用上不直观,灵活性差,同时基于Exchange Server的二次开发难度也较大,系统之间的兼容性和扩展性差,目前在市场上单纯地基于Exchange Server的公文流转系统比较少见。1.2.3 基于Windo

20、ws .Net框架的公文流转系统Windows .Net框架具有很强的灵活性和扩展性,能够与操作系统平台进行良好的结合,与各类应用程序可进行数据传递,其系统同时可用于B/S和C/S两种模式,在外在表现形式上十分灵活,开发难度和成本低,能够方便的使用各类中间件。Windows .Net框架下的开发工具很多,主要有VB、VC、ASP等,作为一种通用的开发手段,Windows .Net框架的应用范围很广,但它的专业性不强,在开发公文流转系统时需要进行复杂的重定义工作,同时在规模大的应用过程中稳定性一般。目前广泛使用的基于浏览器,使用ASP开发的办公自动化系统一般具有简单的公文流转功能。1.2.4 基

21、于JAVA的公文流转系统Java具有很强的数据处理功能和稳定性,在大规模数据处理和安全性方面占优势,适合开发浏览器形式的应用系统,J2EE的开发模式适合工作流性质的软件开发,有比较强的灵活性,在开发模式上与ASP相似。目前市场上还没有完全基于Java的公文流转系统,由其实现的公文流转功能主要表现在一些有Java开发的办公自动化系统中。目前使用的Struts框架及MVC模式,结合JSP开发出来的公文流转系统在市场上具有很强的挑战性。1.3 工作流的基本概念和特点1.3.1 工作流的概念工作流是一类能完全或部分自动执行的经营过程,且能根据一系列的过程规格,文档、信息或任务在不同的执行者之间进行传递

22、和执行。简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务。1.3.2 工作流程的特点与一般意义上的工作流不同,公文流转系统中的工作流有自己的特点和特殊要求。公文流转就是办公文件从拟稿到归档并在各部门之间逐级审批的流转过程。公文流转的模式一般可归纳为以下四种:直流模式,分流模式,合流模式和回流模式。(1)直流模式是最简单的流转模式,表示文档在人员之间一对一的传送,通常用于申请审批类流程,如一份公文信息单经部门经理批示后直接交给下一个经办人处理。(2)分流模式表示企业中人员之间一对多的传送,比如一些通知。(3)合流模式表示企业中人员之间的多对一的送达,如总经理分发给多个下一级部门经办人

23、的信息单经不同的经办人员处理完成后汇总给总经理进行查看批示。(4)回流模式表示公文流转过程中可能会出现的退回、重做等情况,从而在流程中形成回路,这种情况也十分常见。这些基本的流进行组合可形成更复杂的流。此外,通过对以上公文流转模式的研究,可以整合和确立各个操作节点之间的关系。1.4 小结目前公文流转研究已经初步处于成熟阶段,不过其理论和方法还有待于进一步完善。基于目前公文流转的现状,以下方面的研究将得到更多的关注:(1)系统的集成性,换句话说,就是现在或者未来我们所需要的是一个能够集多种功能于一体公文流转系统。(2)完全基于网络,也是能够开发出完全基于B/S的公文流转系统,这样才能有利于系统的

24、维护和系统集成的实现。(3)公文流转流程的合理优化,我们必须要基于现代的流程管理思想对目前的业务流程进行重组、优化,这样才能提高公文流转的效率。第二章 开发技术与系统分析2.1 开发工具本系统运用的开发工具为:MyEclipse3.2,Tomcat5。2.2 开发技术开发架构:B/S程序设计语言:java设计模式:MVCM(Model 模型):JavaBean(pojo类)-模型层V(View 视图):JSP-显示-视图层C(Controller 控制器):servlet,struts -控制层数据库:Oracle9i数据持久层:Hibernate数据验证:ajax,javaScript,xm

25、l2.3 开发技术简介2.3.1 java简介作为一种程序设计语言,java是分布式的、面相对象的、不依赖于机器的机构,具有可移植性、安全性,并且提供了多线程并发的机制,而且还提供代码检验机制以保证安全性。它最大限度的利用了网络,Java的applet可在网络上传输而不受CPU和环境的限制。另外,Java代码清晰合理、简明流畅,还提供了丰富的类库,使程序设计者可以很方便地建立自己的系统。总之,Java是一种编程语言、一种开发环境、一种应用环境、一种部署环境、一种广泛使用的网络编程语言,它是一种新的计算概念。在面向对象的程序设计(OOP)中使用Java语言的继承性、封装性、多态性等面向对象的属性

26、可以较好的实现信息的隐藏、对象的封装,从而降低程序的复杂性,实现代码的复用,提高开发速度。2.3.2 Servlet技术简介(1)Servlet的优点1)处理客户端请求时,服务器端分配一个线程去处理,系统消耗小,适合大量的客户端并发访问。2)采用java语言编写,具有java语言的一切优势。(2)Servlet处理请求流程1)客户端发起一个请求如http:/localhost:8080 -定位WebServer/workflow -定位Web应用/pages/login.JSP -定位Servlet(FirstServlet)2)当Web Server接受到请求后,将请求交给容器来处理,容器会

27、根据Web.xml中的Servlet描述去查找对应的Servlet。3)如查找不到,服务器端返回404(访问的资源不存在)代码返回到客户端。4)如找到,将要访问的Servlet装载进虚拟机并且实例化。5)容器去调用该Servlet的service方法去处理客户端的请求,并分配一个线程去行。(3)在此工程中用到的保存用户信息 Session1)session是在服务器端创建,在服务器端保存。2)session可以保存Object类型的数据。(4)请求分发器获得请求分发器的方式:1)服务器内部跳转。2)服务器外部跳转(重定向)。2.3.3 JSP技术简介(1)JSP(Java Server Pag

28、e)SUN推出的一门用于开发Web应用的技术专门用来作为试图显示,是html和java的组合使用。(2)JSP的生命周期1)翻译阶段当客户端发起请求第一次访问JSP时,容器先判断被访问的JSP是否找到若不存在返回404(访问的资源不存在)到客户端,若存在就将JSP翻译Servlet(java源文件)。2)编译阶段容器将Servlet源文件编译成class文件后装进虚拟机并实例化(只有一个实例)。3)执行阶段按照Servlet的生命周期中的步骤(init()、service方法、destory())执行Servlet处理客户端的请求。2.3.4 表达式语言为了减少在JSP页面中出现过多的脚本,使

29、用表达式语言解决。(1)标签封装了一些java代码(一个标签对应一个标签处理类)可以完成某个功能。(2)使用标签也可以大量减少JSP中的脚本。(3)使用标签可以将JSP中的动态的逻辑代码和静态内容实现分离,便于程序员或者美工人员进行页面的维护。(4)标签可以被重复使用。浏览器服务器JSP数据库请求调用请求回传回传回传2.4.4 图2-1 JSP运作模式2.3.5 JavaBean简介(1)使用javaBean的特点1)要实现Serializable接口。2)要提供一个无参的构造器(为了使用方便)。3)要提供一些属性,并提供相应的set和get方法。4)可以包含处理事件的代码(如swing中的时

30、间处理)。5)可以包含处理业务逻辑、数据访问逻辑或者事务控制逻辑的代码。(2)使用javaBean的目的1)封装一些数据信息(如:Memberinfo info等)。2)封装业务、数据访问或者事务控制逻辑。3)可以将JSP中的脚本封装进JavaBean中,以减少JSP中脚本的使用。4)JavaBean是一个可重用的组件。2.3.6 Hibernate技术简介(1)Hibernate的优点1)对JDBC做了轻量级的封装,底层和数据库操作是基于jdbc,Hibernate框架对外提供了一些操作数据库的接口方法(如:sava()等)。2)减少了这个软件系统的开发周期。3)对JDBC的事务和JTA的分

31、布事务和JNDI也做了封装。4)轻量级就是指应用程序可以直接使用Hibernate提供的API操作数据库也可以绕过Hibernate使用jdbc提供的API操作数据库。(2)选择Hibernate的原因1)Hibernate特有的ORM(对象关系映射)应用程序的java对象对数据库中的表的持久化(保存)的过程,通过文件(xml)来描述他们的对应(映射)关系。关于ORM 实现基本的CRUD:create,retrieve,update,delete。 实现特殊的查询需求。 实现应用程序和关系性数据之间的映射(映射工具)。 dirty checking脏检查:保证内存中的数据和数据库中的数据同步。

32、2) 提高性能的需求我们应用程序尽量减少数据库的交互。需要缓存来存放需要处理的数据以便尽量减少和数据库的交互次数。3)维护的需求如果在业务逻辑层嵌入大量的sql语句,当业务需求改变的时候我们不需改变整个层次,避免维护困难。2.3.7 Struts 技术简介(1)使用Struts的目的利用Struts可以构造我们整个软件系统的框架结构,可以将系统划分为三个核心的模块。Struts(MVC)模式图形如图2-2所示。1)Model(模型层)JavaBean处理业务逻辑的-业务逻辑层。处理数据访问逻辑的-数据访问层。2)View(视图层):JSP,Html3)Controller(控制层)Action

33、Servlet(控制器)Action(控制器)RequestProcessor(请求处理器)图2-2 Struts(MVC)模式(2)Struts的优点1)快速构建软件系统的框架结构,提高开发效率。2)可以提高系统的重用性,扩展性和可维护性。3)比较适合于开发一些大的软件项目。(3)Struts的工作流程 1)容器在装载并实例化ActionServlet实例对象后,在初始化方法init()中先去解析Struts-config.xml文件,将其中的每个元素封装成struts框架中对应的一个个类的对象。2)不管表单是GET还是POST方法提交,ActionServlet对象都去调用process(

34、request,response)方法,在该方法中构造一个RequestProcessor类的对象,然后调用它的方法process(request,response),并将request和response传递给该方法,接下来由RequestProcessor对象全权处理请求。3)RequestProcessor对象根据请求URL中的ServletPath到HashMap中查找,若找到对应的ActionMapping处理,如果没有抛出404。4)若找到ActionMapping对象,根据属性name的值到集合formbeans中查找对象ActionFormBean的对象,若找到该对象也就找到了用

35、户自定义的ActionForm,若没有找到跳转到8。5)判断是否存在ActionForm对象,根据scope(request).getAttribute(属性名)(属性名的值就是attribute指定的值)来查找对应的ActionForm对象,若没有构造一个新的ActionForm对象,然后放置在scope指定的范围中(scop.setAttribute(属性名)。6)调用ActionForm对象中的reset()方法进行属性的初始化,再将表单字段封装到该对象的属性中,该方法要用户自己实现。7)若validate为true,执行Action Form对象中的validate()方法,若vali

36、date为false,不执行该方法跳到8,(该方法的实现由用户提供,如果验证不通过,跳转到属性input指定的JSP,如果验证通过执行8)。8)先判断Action对象是否存在,从Action缓存中去查找对应的Action对象,Action缓存就是一个HaskMap(属性type指定的值,Action对象引用)若没有构造一个新的Action对象放置到集合中。9)Action对象调用execute()方法,返回一个Action Forward对象,Request Processor对象,根据其中属性信息forward或者重定向到path指定的资源(JSP,servlet,Action)。图2-3

37、Struts的工作流程2.3.8 AJAX(Asynchronous JavaScript and XML)技术简介(1)AJAX的流程1)在客户端的页面中产生一个事件(onclick,onchange,onblur等)去调用js文件中对应的JavaSctip函数。2)创建XMLHttpRequest对象实例。3)设置属性onreadystatechange(事件处理器)。4)调用open()和send()。5)在回掉函数判断response信息是否全部被XMLHttpRequest对象接受和返回的信息是否正确,若一切正常那么通过responseText或responseXML获得respon

38、se中的信息(html或者xml)。注意:回掉函数被调用多次。6)利用获得的返回信息对页面内容进行局部更新。(2)AJAX主要解决的问题1)当客户端发起一个请求后,在response还没有返回之前,此时客户端页面内容可能会丢失处于空白状态。2)用户的操作可能被中断。3)若页面要进行局部更新,整个页面要全刷新。2.4 小结以上是对各种技术的简单介绍,由于各自的优点使得程序开发变得简单,可维护性好,健壮性,安全性。使用AJAX可以异步发起请求,这样用户在发起请求的时候还可以进行其他的操作,使用Struts是一个MVC框架底层使用servlet实现,功能强大,开发容易,容易维护,效率高,缺点就是必须

39、在此框架下运行,在Struts2.0下基本解决。此系统使用Struts1.2。第三章 需求分析与系统设计3.1 需求分析为了开发出真正满足用户需求的软件产品,首先必须了解用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望,给开发者带来烦恼。本系统为实现出工作流程的灵活性、多样性、完整性,采用的是xml配置文件,当用户提交选中的工作流程或者自己定义一个流程的时候,系统使用dom技术自动解析该配置文件,使用Hibernate持久化工作流程。采用xml优点可以定义工作流程的优先顺序,可以很直观显示给用户。处理人员查看要处理的公文,系统会自动检索出需要处理的任务。当处理人员接受到该任务并作出

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁