版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 办公自动化系统的设计与实现摘要:MVC模式是一种适用于J2EE的开放式框架。它最大限度地让网页或其他浏览内容(视图层)与代码(模型/控制层)分离,让设计人员和程序员可以专注于各自的专长。而且由于Java的“一次编写,随处运行”的特性,提高了开发效率。本文重点研究在uilder环境下,应用MVC模式开发政府机关办公自动化系统的核心功能,即收发管理、工作流控制和用户管理。以我们OA团队开发的办公自动化系统WebOA为例,介绍了自己设计的收发工作流模块和用户管理模块的相关技术,分析了程序结构,阐述了具体功能的实现。关键词:MVC模式,办公自动化,工作流,数据库,用户管理引言。办公自动化(OA)以先
2、进成熟的计算机和通信技术为主要手段,构建覆盖政府企业和其他部门的办公信息系统,提供企事业单位和其他专用计算机网络之间的信息交换,建立优质高效的政府信息网络,为领导决策和办公提供服务,实现办公现代化、信息资源利用化、网络传输化和决策科学化。由于OA涉及的领域很广,只要是与信息通信相关的办公软件都可以链接到OA,市场上的OA产品质量水平参差不齐。虽然客户对OA产品的需求很大,但是能够满足要求的产品并不多。通过调查,我们发现主要存在以下缺陷:1 .浮华的功能。很多产品看起来很全面,但是很多功能很难实现,真正的核心功能没有深入,导致资源浪费。2.面向群体但没有针对性。OA是针对客户群体的,很多产品宣传
3、说可以在任何办公环境下使用,但结果是哪里都可以用,哪里都用不好。OA的工作环境的性质决定了它必须能够以相对固定的工作流程为某一类单位工作。3.行业监管力度不强。OA是针对有一定办公标准的行业,要求开发的软件有严格的符合行业设计规则的公文和工作流程。从上述需求出发,我们提出了OA-B(局办公自动化)的概念,即办公自动化系统。办公自动化系统是一个具有战略意义的信息系统,它可以实现各级部门之间和办公室外部办公信息的采集、处理、流动和共享,实现科学决策。经过市场调查,我们发现一个成功的OA-B应该具备以下特征:1。能够适应办公自动化业务灵活多变的流程处理手段。2.子系统之间的数据集成,OA系统可以完成
4、不同职能部门之间信息的双向传递。这些系统本身可以是完全异构的和分布式的。3.由于涉及重要的政府办公信息,信息系统的安全性和完整性以及可配置管理是任何时候都要考虑的特性。4.技术符合标准,技术先进。特别是,办公文档和工作流程必须符合应用行业的法规。2系统相关技术介绍2.1系统开发架构本系统采用JSP+Servlet+JavaBean的三层架构开发模式。该模式遵循视图控制器的M-V-C模式,其基本思想是使用一个或多个Servlet作为控制器。请求被前端的Servlet接收和处理后,会被重定向到JSP。当servlet作为控制器时,每个Servlet通常只实现很少的功能,多个Servlet控制器可以
5、组合起来完成复杂的任务。这具有servlets良好可重用性的优点。在这种模式下,JavaBean充当模型,它充当JSP和Servlet之间通信的中间工具。Servlet处理之后,它设置Bean属性,JSP读取Bean属性并显示它们。这种模式更明显地将显示与逻辑分离,使得代码易于管理,适合大型项目的开发,所以本系统采用了这种模式。该模式的数据传输关系如图1-1所示。图1-1 OA-B开发模式的数据传输关系2.2系统采用的MVC模式架构通过模型、视图和控制架构(M-V-C)实现简单高效的应用升级和维护,讨论如何让不知道程序代码的人避开程序数据。MVC的架构是描述重现问题及其解决方案的设计,但每次问
6、题重现时,解决方案不会完全相同。MVC设计风格包括三种对象:1.该模型提供了应用程序业务逻辑(企业Beans类)。2.视图是它在屏幕上的显示(html页面、JSP页面、Swing GUI)3.控制器是Servlet、JavaBeans或会话Beans类,用于管理用户和视图之间的交互。2.3系统采用J2EE相关标准组件技术。J2EE平台是一个多层分布式模型,组件重用,一致的安全模型和灵活的事务控制。客户端组件、企业Beans组件、Servlet和JSP页面组件、Applet等。1.JSP(JavaServer Pages)技术这个系统中MVC的V部分Viewer。2.Servlet技术Apple
7、t的服务器端版本,Applet是由Web服务器加载的Java程序,用于处理客户请求。该系统是MVC-Controller的C部分。3.JavaBean技术复用组件技术(独立的可复用模块,负责数据库交互和数据抽取,很多动态页面处理过程都封装在JavaBeans中)。该系统是MVC模式中的M组件模型。4.JDBC技术用于执行SQL语句的Java应用程序接口,由一组用Java语言编写的类和接口组成。JSP通过JDBCODBC桥驱动程序访问数据库。本系统主要与三层架构中的数据层进行交互。2.4系统开发平台建议使用Borland公司推出的用于连接数据库和Web应用开发平台的产品uilder作为我们OA实
8、验室相关系统的开发工具。2.5系统操作环境1.服务器端运行环境服务:带网络接口卡(NIC)、512M内存和80G以上硬盘的高性能PC。操作系统:Windows 2000 SERVER服务器:APACHE TOMCAT服务器:MICROSOFT SQL SERVER 20002.客户端运行环境客户端:带网络接口卡(NIC)的PC,128M内存,操作系统:Windows 2000专业版浏览器:微软Internet Explorer 5.0或以上。3系统功能结构3.1 OA-B模式总的来说,OA-B侧重于公文处理和机关事务管理,提供信息沟通和服务等重要功能。因此,典型的OA应用包括收发文件管理、公文
9、流转、政府信息收集与发布、部门请示与报告管理、文件管理、会议管理、领导活动管理、政策法规数据库、部门论坛等。如果从系统功能的角度考虑上述办公自动化做一个分析,你会发现办公自动化软件。在这些功能中,最核心的功能是消息。交付、工作流和复合文档可以说是最小的。子集。如图3-1所示。协力保安措施互联网消息传递工作流程复合文档这些功能要求我们选择办公自动化应用图3-1。开发和使用平台时必须考虑的判断依据。3.2基本要求:消息传递功能消息传递系统作为信息传递和共享的工具和手段,满足了OA-B最基本的通信需求,换句话说,MTS(消息传输系统)作为通信基础设施,主要提供两个功能:从信息技术的角度来看,消息传递
10、功能是一种“推送”技术,即发送方通过存储转发技术将信息推送给接收方。从用户的使用习惯来看,消息传递功能是办公自动化系统的“入口”。因为做OA的人很容易养成一种工作习惯,每天查看收件箱,阅读和处理相关信件;而且先进完备的消息传递系统一般都有提示新信件到达的功能。因此,OA-B可以利用消息传递系统的特性,将每一条需要员工处理的消息或通知做成信件,直接传递到员工的收件箱中。在一个OA-B中,根据不同的业务需求,通常会有几个应用子系统,如发文、收文、信息服务、文件管理、活动安排、会议管理等。收件箱可以作为所有这些办公应用子系统的统一“门户”。每个用户通过关注自己的收件箱就可以知道要处理的工作,而不是频
11、繁的查看不同的应用系统,看哪些工作需要处理(这里办公自动化应用系统以消息传递为统一入口,可以大大减少培训的工作量。3.3应用模式:工作流所谓工作流,就是一群人为完成某项业务而做的所有工作之间的交互过程。几乎所有的业务流程都是工作流,尤其是办公自动化系统的核心应用公文审批和流转处理、会议管理等。每一项工作都是以流程的形式,由发起者(如文件起草人)发起,由部门会同其他部门处理(如会签),最后到达流程的终点(如发文、归档、入库)。工作流程可以互联、交叉或循环。例如,一个工作流的结束可能是另一个工作流的开始。比如上级部门的后处理触发下级部门的后处理。工作流也可以打破单位的界限,它发生在机关与机关相关单
12、位之间。及时检索不同人员的操作权限(如起草人在起草文件后不能修改文件,但其上级领导获得签署文件或修改文件的权限),主动提示和督促工作人员实现某一阶段的处理,从而整体提高工作流处理的效率。工作流自动化有两种实现模式,即基于共享数据库和基于共享数据库。工作流应用的基础是将数据表单从一个人传递到另一个人。它的特点是模式简单。但是最大的缺点是无法监控,没有一个管理者能够及时了解工作流动态。其他问题还包括:难以实现自动化处理,如机构提醒、集中备案、统计等;数据容易出现多份拷贝,安全性和准确性难以控制;大量的传输导致大量的网络流量。基于共享数据库的工作流应用可以克服基于。例如信息的单一存储和自动处理,更好
13、的安全性和易于监控。然而,工作流的驱动却成了一个问题,由于缺乏信息沟通机制,无法主动通知相关人员进行下一步工作。该系统的工作流程基于共享数据库模式开发。3.4本系统的功能模块基本思路是将整个系统按照实现功能进行分解,用JSP+JavaBean+Servlet进行编程。实现的系统的功能结构模块如图3-2所示。办公自动化系统个人人类做公众的公众的一起做公众的工作流程管理领带联合经营线条政治做公众的部门管理用户管理图3-2办公自动化系统结构图在它之下,可以划分为子系统结构图。用户管理子系统使用家庭充满卷模型块使用家庭认为休息一会儿管理理由模型块使用家庭认为休息一会儿固定正确的模型块管理理由成员攀爬记
14、录模型块公众的告诉障碍模型块使用家庭秘密院子固定正确的模型块使用家庭攀爬记录模型块使用家庭支票要求模型块逗留单词板模型块图3-3用户管理子系统功能模块图4核心子系统模块设计我们已经提出,作为一个OA系统,核心功能应该是消息传递、工作流、复合文档,加上用户的权限管理,可以称之为功能简化的OA-B系统,已经可以应对一般政府办公的日常工作。我们知道,在OA-B中,相应的消息传递功能实现了发送/接收管理,从发送到接收的过程可以看作是一个工作流。所以毫无疑问是OA-B系统中真正的核心。作为软件中的“人”的因素,用户的权限管理功能不可或缺。其中包含了动态管理对应的数据库连接技术。本章以收发管理和用户管理的
15、实现为例,介绍OA-B的设计原理。4.1发送/接收管理由于每一类对象的管理都是相似的,本文仅以行政办公中的公文收发为例来分析本系统中的数据流程。根据图1-1中OA-B开发模式的数据传输图,我们可以大致了解过账流程的原理,即图4-1。4.2 MVC模式分析和文档管理发报机小型应用程序请求向前阅读拿模型视角JavaBeanweb.xmlJDBC资料库草稿页奎里控制器图4-1过账模式数据传输示例图步骤1:控制器型号SQL Server用户完成草稿后,Servlet作为的控制器,通过调用Web配置文件web.xml向JavaBean发送控制信号,并为其赋值。JavaBean中的一个值对象(VO)会通过
16、JDBC连接到SQL Server数据库,所需信息被调出并返回给VO,从而实现模型层与数据库的交互。第二步:控制器查看器模型Servlet还向JSP发送信号,从JavaBean中读取数据库信息,视图层的JSP页面从JavaBean中调出信息,生成发帖草稿页面,完成一次发帖。4.3用户权限管理在WebOA系统中,主要管理用户的一系列活动,包括公告、通知等数据信息的输入。数据的类型决定了处理方法,也就是算法。因此,数据是系统实现的起点。这里,我们将使用数据流图(DFD)来分析数据的流向和趋势。由于每种对象的管理都是相似的,所以本文只以行政办公文档管理的权限来分析本系统中的数据流。主要的数据关系是管
17、理员管理本子系统涉及的相关数据,而用户可以在前台浏览和查询相关信息。总图如图3-1所示。零级图如图3-2所示。0用户管理子系统用户查询条件查询结果和浏览信息下载信息注册信息管理人更多新的数数根据支撑供给数数根据图4-3用户管理子系统总图管理人用户信息一个。0用户信息管理由八。0信息查询处理用户信息桌子更新数据查询请求查询结果七。0更新数据库资料库查询结果集查询字符串2。0调查委员会管理更新数据调查信息桌子六。0调查经营浏览/问题/下载四。0公告管理由日志信息表更新数据五。0刘公告局域网管理浏览存款三。0公告板管理由更新数据公告信息表公告数据用户信函休息一会儿调查信息公告信息存款存款调查信息更新
18、数据图3-2用户管理子系统零级图在图中,弯曲的矩形是每个数据流中涉及的处理,并且有一个确定的数字。通过逐步细化,完成从上到下,从外层到系统部分的过程。校友的数据流也可以分为查询请求和查询结果两种数据。对这两种数据采用不同的处理方法,如图2-4所示。2。一个结构化查询语言句子转换2。2查询结果转换查询请求(网页,面,张,版)查询结果集查询字符串(结构化查询语言语言句子)查询结果(超文本标记语言页,面,张,版脸)图4-5用户查询信息详情4.4用户权限的数据逻辑结构下面我们就以权限管理中的用户管理为例,通过E-R图来分析这种关系。管理人待办任务增加/修改身份数字名字人员数量用户名密码用户增加增加/固
19、定正确的浏览xx附属功能任务名称持有的工单编号通告发送浏览身份数字公告标题公告内容放时间出版者/单位管理权限/特权持有的立场性别任务编号任务计划/身份数字标题内容任务名称图4-6电子病历用户管理示意图4.5用户管理数据库的物理结构每个子系统模块中具有相同主键的字段是相互关联的,因此在服务器上建立的数据库应该包括以下表:管理员,个人消息,公共消息,员工消息下面将详细描述数据库中每个表的结构。整个系统只需要一个管理员登录入口,只需要在数据库中建立一个管理员表,根据不同的管理权限访问不同的后台管理系统对数据进行操作。管理员见表4-3。用户信息表见表4-4。表4-3管理员表表名字段名类型大小科空抑制评
20、论管理人用户名可变长字符串15普通主键用户名密码可变长字符串20普通密码限制可变长字符串10普通管理权限/特权表4-4人事管理信息表表名字段名类型大小科空抑制评论Staff _消息身份整数普通主键数字用户名可变长字符串15普通密码可变长字符串20普通密码性性格;角色;字母2Y性别地址可变长字符串30普通地址电话可变长字符串20Y电子邮件可变长字符串30Y地址值得一提的是,在数据库操作中,数据库的连接成本最高,时间最长。通常情况下,Servlet在响应客户的请求时,如果需要操作数据库,就会建立数据库连接,然后与数据库交换数据,最后关闭数据库连接。这将导致每次用户请求时数据库连接和关闭。如果大量用
21、户同时请求,数据库连接和关闭的开销会变得巨大。必然会导致系统过载,反应速度变慢。显然这种处理方式性能较低,但是因为Servlet是基于协议的,而协议是无状态的,所以在处理完用户的响应后,用户的各种信息都不会被保存。因此,同一用户的请求将被视为不同的请求。那么,同一个用户的两个数据库操作应该做了一个数据库连接,但是由于无状态的原因,会做两个数据库连接。协议的无状态性是数据库无效连接和关闭的根本原因。该协议是国际标准协议,不能更改。为了提高数据库连接的有效性,中间层将采用数据库连接池技术。连接池技术的核心思想是在需要之前建立一组数据库连接。也就是说,第一次加载Servlet时,会建立一定数量的数据
22、库连接,然后放在一个集合对象中。该对象充当数据库连接的代理,所有数据库连接都由该代理控制。当客户机请求数据库连接时,它可以简单地从数据库连接代理请求一个空闲连接。该代理将从连接池中选择一个空闲连接,标记它以指示此连接不可用,然后将此连接返回给客户端。因为连接是预先创建的,所以代理几乎可以立即返回连接,而不会产生任何系统开销。当不再需要连接时,客户端可以将其返回给代理,代理会将其标记为可用。除了处理连接,代理还将负责维护连接池的所有细节。包括数据库连接刷新,主要是通过删除并重新建立一些数据库连接,或者当连接池中的可用连接被大量并行请求耗尽时,创建新的连接。总结我参加这个项目已经六个月了。目前基本
23、功能已经实现。OA-B下的WebOA系统是一个典型的具有实际应用意义的管理系统。在师兄的带领下,团队进行了详细的调研,确定了系统涉及的领域,包括数据库设计、界面设计、Web应用层设计等。该系统具有以下特点:(1)采用浏览器/服务器三层架构,使系统具有良好的可维护性和可重用性。(2)本系统的开发过程采用JSP+JavaBean+Servlet模式。这种模式显然将显示与逻辑分离,使代码易于管理,适合大型项目的开发。(3)中间层使用数据库连接池技术,加快与数据库服务器的数据处理,同时也加快对客户端层的响应。(4)Web服务器采用应用服务器,应用服务器是一种相对完整、开放的Web应用服务器。它严格遵循
24、流行的开放标准,更适合大规模开发。(5)后台数据库采用SQL2000,功能强大。除了处理在各种平台上运行的数据库管理系统核心之外,它还包括数据复制、数据库系统管理、因特网网关支持、联机分析处理、多媒体支持和各种并行处理能力。但是由于这个系统比较大,而且在这个项目的初期,我对Java和Web应用设计不太熟悉,毕业设计的时间有限,很多方面都需要在下一步进一步改进和完善。主要表现为以下几个方面:(1)尽量采用Struts框架,满足MVC/ Mode 2的要求,将表示层和事物层分离,使系统具有较高的可重用性和适应性以及良好的可维护性。(2)系统的某些设计的可扩展性不是很理想。在未来的系统维护过程中,将通过重构方法对系统进行重构,这将使系统设计更具可扩展性。(3)开发和使用更多的JSP标签,可以和JSP的展现逻辑紧密链接,同时拥有和普通Java
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年茶楼顾客满意度调查合同
- 银行工作总结团结协作共同成长
- 快递行业助理工作总结
- 2024年资产转让协议3篇
- 2024年物业公司对公共设施维护保养合同
- 2024木屑生物质能源合作开发与利用合同范本3篇
- 2024年销售促进外呼合作合同2篇
- 学校社团工作计划开展学生志愿者活动
- 2024文化艺术活动策划与执行劳务派遣协议
- 2025版科技创新项目合作单位间设备借款合同2篇
- 食品从业人员安全学习培训记录
- 内科季度护理质量分析课件
- 2024年安全生产月活动安全知识竞赛题库含答案
- 销售回款专项激励政策方案(地产公司)
- 孕产妇健康管理服务规范课件
- 风电项目核准及开工行政审批流程(备案核准、施工许可)
- ××市××学校巩固中等职业教育基础地位专项行动实施方案参考提纲
- 教育培训基地建设实施计划方案
- 庙宇重建落成庆典范文(合集7篇)
- 道德与法治-《我也有责任》观课报告
- autocad二次开发教程基础篇
评论
0/150
提交评论