当前位置: 首页 > news >正文

谷歌搜索入口365贵阳哪家网站做优化排名最好

谷歌搜索入口365,贵阳哪家网站做优化排名最好,建设集团网站的作用,大型网站 解决方案 技术项目说明报告 基于java的办公自动化系统 极光办公自动化系统是针对南开创元信息技术有限公司开发的#xff0c;专门用于企业内部员工信息交流的软件,其开发过程主要包括前端应用程序的开发和后端数据库的建立两个方面。对于前者要求应用程序功能完备操作简单,对于后者要求建立… 项目说明报告  基于java的办公自动化系统 极光办公自动化系统是针对南开创元信息技术有限公司开发的专门用于企业内部员工信息交流的软件,其开发过程主要包括前端应用程序的开发和后端数据库的建立两个方面。对于前者要求应用程序功能完备操作简单,对于后者要求建立起数据一致性、完整性和安全性好的数据库。 本论文在对南开创元信息技术有限公司充分调研的基础上针对该公司实际情况采用Client/Server模式、利用JAVA语言进行系统的开发以SQL Server  作为网络数据库实现极光办公自动化系统。 系统用网络数据库将企业内员工的基本信息统一管理起来形成集成的信息源系统会根据员工所属部门对员工进行分类这样有利于发送者快速找到发送目标也能方便的进行信息的群发在该系统中总经理具有最高的权限负责对系统的管理。 该系统可使企业内员工之间信息的交流更高效更便捷也使企业内各部门之间员工的频繁往来减到最少从而提高企业整体的办公效率为企业节约成本使企业在激烈的市场竞争中赢得优势实现企业整体战略目标。 目   录 概述………………………………………………………………………1 1.1 引言…………………………………………………………………………………1 1.2 办公自动化背景……………………………………………………………………1 1.3我国办公自动化发展现状…………………………………………………………2 1.4 我国办公自动化发展方向…………………………………………………………3 1.5 极光办公自动化系统开发背景……………………………………………………3 第二章 系统分析…………………………………………………………………4 2.1 极光办公自动化系统的需求分析…………………………………………………4 2.2 极光办公自动化系统的可行性分析………………………………………………4 2.3 极光办公自动化系统数据流程图…………………………………………………6 第三章 系统设计…………………………………………………………………12 3.1 系统设计原则………………………………………………………………………12 3.2 系统功能模块设计…………………………………………………………………12 3.3 系统物理配置方案设计……………………………………………………………14 3.4 数据库设计…………………………………………………………………………14 3.5 输入输出设计………………………………………………………………………16 3.6 系统的安全性设计…………………………………………………………………17 第四章 极光办公自动化系统的技术支持与实施………………………………18 4.1 选择编程语言………………………………………………………………………18 4.2 SQL Server2000数据库……………………………………………………………18 4.3 Java数据库解决方案………………………………………………………………18 4.4 Java局域网解决方案………………………………………………………………21 4.5 系统界面解决方案…………………………………………………………………25 第五章 结束语……………………………………………………………………29 致谢…………………………………………………………………………………30 参考文献……………………………………………………………………………31 第一章  概述 1.1  引言 在信息时代一个具备一定规模的现代化组织在其内部办公运作过程中对信息资源共享和信息实时交流的要求越来越高高效的办公行政流程和业务运作的信息实时交流的要求越来越高高效的办公行政流程和业务运作的规范管理成为提高机构管理水平和办公效率减少资源的消耗提高机构服务水平的必不可少的手段和方法。      办公自动化系统的总体目标是“以先进成熟的计算机和通信技术为主要手段建成一个覆盖企业办公部门和企事业单位的办公信息系统通过网络技术提供本单位内部各部门各员工之间的信息交换建立高质量、高效率的信息网络”本系统也是为实现这一根本目标建立的它可以实现企业的办公现代化、信息资源化、传输网络化。     极光办公自动化系统开发的真正意义不是简单的借助电脑处理收发电子邮件等日常办公作业而是通过计算机系统的各种应用使各独立的工作者能实现信息共享协同工作合理组织机构的公文和文档的流程等办公作业全面提高组织机构的办公效率实现信息共享。 1.2办公自动化背景 办公自动化(OfficeAutomation)是20世纪70年代中期发达国家迅速发展起来的一门综合性技术。我国的产业从80年代末发展至今已从最初的提供面向单机的辅助办公产品发展到面向企业级应用的大型协同工作软件。其发展过程大致分3个阶段。 第一阶段 以数据为处理中心的传统系统它的最大特点是应用基于文件系统和关系型数据库系统以结构化数据为存储和处理对象强调对数据的计算和统计能力。其贡献在于把IT技术引入办公领域提高了文件管理水平。但是这种方式缺乏对收发文等群组协作工作过程的处理能力因而其自动化程度是有限的。 第二阶段 以工作流为中心的办公自动化系统办公自动化已实现了以工作流为中心。这种方式彻底改变了早期办公自动化的不足之处以E-Mail文档数据库管理、复制、目录服务、群组协同工作等技术作支撑以工作流为中心的第二代办公自动化系统包含众多的实用功能和模块实现了对人、对事、对文档、对会议的自动化管理。与第一代办公自动化相比第二代系统具有以网络为基础以工作流自动化为主要的技术手段缺少对知识管理的能力等特点。 第三阶段 知识管理技术为基础的自动化系统第三代的核心是知识实现的基础是知识管理技术。知识管理是一个系统工程可以帮助企业解决知识共享和再利用的问题目标是将正确的知识传授给正确的人使他们采取合适的行动避免重复错误和重复工作。知识管理关注“如何获取、组织、利用和传播在企业信息系统和人们头脑中的知识”。第三代OA系统有几个显著的特点实时通信员工与专家可以网上实时交流信息广泛集成的内容编目知识门户的构造。第三代OA帮助企业从How To的过程转到Know的过程将办公自动化系统由模拟手工作业向改变并提高手工作业效率的过渡。 1.3我国办公自动化发展现状 进入20世纪90年代中期以后由于国内经济的飞速发展引发市场竞争的逐渐激烈以及政府管理职能的扩大和优化这一切导致政府和企业对办公自动化产品的需求快速增长。这时办公自动化开始进入一个快速发展的阶段。国内专门从事软件开发的公司也逐渐成长起来并专门为政府和企业订做办公自动化系统。由于这些系统是根据用户的具体需求开发的所以需要功能比较完善并能较好地满足用户的实际需要。但这是一个巨大而低效的市场具体表现在投资大、效果不明显水平低、重复建设多硬件投入多、软件投入少模拟手工作业增加管理负担等。这是因为开发商水平参差不齐开发队伍组队模式不合理、缺乏开发办公自动化产品的经验、用户缺乏对办公自动化产品的认识等部分软件产品质量不高不顾中国企业的运作特点照搬国外技术使得实施困难对的理解起点不高导致系统与其他系统集成度差用户使用水平低又不愿花太多的精力投入培训售后服务不到位定做开发又会因用户需求变化要对软件进行不断的修改维护。到最后整个软件的性能和可使用性都大大降低没有耐性的企业索性废弃掉从而导致项目失败。从技术来看普遍存在如下缺点为用户考虑的少软件的柔性构造功能差。当前很多软件过分强调了软件之间功能的横向对比为用户考虑的实际功能比较少结果导致软件大而全而真正为用户接受的功能模块很少。另一方面软件的模块复用性很差直接影响了软件的柔性构造功能而当用户的需求改变时哪怕是轻微的改变都需要开发商来解决从而影响了用户的使用效率对开发商也是一个极大的负担。 1.4我国办公自动化发展方向 我国办公自动化的发展方向应该是数字化办公。所谓数字化办公即几乎所有的办公业务都在网络环境下实现。从技术发展角度来看特别是互联网技术的发展安全技术的发展和软件理论的发展实现数字化办公是可能的。但从管理体制和工作习惯的角度来看全面地数字化办公还有一段距离首先数字化办公必然冲击现有的管理体制使现有管理体制发生变革而管理体制的变革意味着权力和利益的重新分配另外管理人员原有的工作习惯、工作方式和法律体系有很强的惯性短时间内改变尚需时日。尽管如此全面实现数字化办公是办公自动化发展的必然趋势。 1.5极光办公自动化系统开发背景 通过我在南开创元信息技术有限公司的实习我了解到该公司各部门各员工之间的信息交换十分频繁但是该公司并没有一套完整的适合本公司的信息交换软件各部门各员工之间的信息交换还是使用一些通用的软件所以软件的利用率不是很高因为很多人根本就不看信息在很多情况下还需要口头传递。由于通用软件不是针对本公司开发的对提高本公司的整体办公效率不是很明显针对上述问题我开发了一套办公自动化软件它的按部门分类查找功能可以使发送人很容易找到接受者节省了搜索查找的时间当收到信息时还会有提醒使接受者不会错过一条重要信息由于软件的主界面是按照公司的部门与组的结构设置所以员工可以对公司部门的设立、部门下的成员、成员的职务一目了然。 第二章  系统分析 2.1极光办公自动化系统的需求分析 办公自动化系统的建立需要进行用户需求调查与分析以确定系统目标这是系统建设的重要环节。中小企业需求规模相对较小在功能上对系统的需求也相对较少。大体可分为一方面是通过收发消息为主的方式与其他员工交流各种信息基于工作流的方式实现诸如请假申请、物品申领等日常办公功能。另一方面则是面向公司办公业务方面的业务管理功能即完全采用计算机技术处理办公业务使企业内部人员能够方便快捷地共享信息、交流信息高效地协同工作既兼顾个人办公效率的提高又可以实现群体协同工作。  传统的办公方式极大的束缚了人的创造和想象力埋没了人的智慧和潜能使人们耗费了大量的时间和精力去手工处理那些繁杂重复的工作手工处理的延时和差错正是现代化管理中应去除的弊端。用先进的、现代化的工具代替手工作业无疑是生产力发展的方向。办公自动化对传统办公方式的变革正是适应了人们的普遍需求也顺应了技术发展的潮流。 针对上述问题我开发了极光办公自动化系统它具有如下特点 极光办公自动化系统可以将人们从繁重的重复性劳动中解放出来大大节省工作时间提高工作效率、减少办公费用。极光办公自动化系统将是企业竞争取胜的法宝它所收集、处理、分析的对象是“信息”。这些准确、及时、可靠的信息将大大有助于提高领导者决策的正确性和科学性。 通过极光办公自动化系统能给企业的管理者在行为方式和思维模式上带来革命性进步。企业在管理手段与管理思想方面已经落后于发达国家所以迫切需要通过推行办公自动化来改善管理手段增强竞争力。 2.2极光办公自动化系统的可行性分析 不论采用何种开发MIS的方法系统分析都是必要且十分重要的环节虽然分析的具体方法和详尽程度可能不尽相同。实践表明系统分析工作的好坏在很大程度上决定了系统的成败。 开发新系统得要求往往来自对原系统得不满。原系统可能是手工系统也可能是正在运行的信息系统。由于存在的问题可能充斥各个方面内容分散甚至含糊不清这就要求系统分析人员针对用户提出的各种问题和初始要求对问题进行识别通过可行性分析确定开发系统的必要性! 可行性分析的任务是明确应用项目的开发的必要性与可行性可行性取决于实现应用系统的资源和条件。系统的可行性主要包括三个方面1、管理上的可行性2、技术上的可行性3、经济上的可行性 1管理上的可行性指管理人员对开发系统应用项目的态度和管理方面的条件。主管领导不支持的项目肯定不行。如果中高层管理人员的抵触情绪很大就有必要等一等积极做工作创造条件。管理方面的条件只要指管理方法是否科学应用管理制度改革的时机是否成熟规章制度是否齐全以及原始数据十分正确等。公司具有合理的管理机制完善的规章制度稳定的经营秩序以及科学的管理方法和程序。并且原始数据完整准确。另外公司领导具有现代化的管理水平和很强的信息意识能从长远上支持本系统的运转。 因此本系统在管理上是可行的。 2技术上的可行性指当前的软、硬件技术能否满足对系统提出的要求如增加存储能力实现通讯功能提高处理速度。此外还要考虑开发人员的水平。信息系统属于知识密集型对技术要求较高如果缺乏足够的技术力量或者单纯依靠外部力量进行开发是很难成功的 硬件方面随着计算机的普及公司各个部门已拥有相当数量的计算机能够支持windows 2000 sever操作系统以及SQL sever 2000数据库管理系统。而且形成了一定规模的计算机网络具有打印机等输出设备能够满足本系统应用的需要。软件方面由于本系统客户端使用JAVA语言进行开发所以可以运行在任何操作系统上服务器端需要windows 2000 sever操作系统和SQL sever 2000数据库管理系统。开发使用的JBuilder9程序设计软件可以在短时间内安装并使用符合系统的要求。人员方面公司员工都经过计算机应用方面的专门培训能够进行基本数据的输入输出能够熟练使用相应的办公软件经过短期培训应该可以使用本系统进行办公。另外公司具有专职的计算机维护人员定期对计算机进行硬件和软件的维护符合系统的要求。 因此本系统在技术上是可行的。 3经济上的可行性主要是预估费用支出和对项目的经济效应进行评估。在费用支出方面不仅要考虑主机费用而且要计算外围设备费用、软件开发费用、人员培训费用和将来系统投入运行后的经常性支出费用如管理、维护费用和配件费用。经济效益应该从两方面考虑一部分是可以用钱来衡量的效益如加快流动资金周转减少资金积压等另一部分是难以用钱来表示的例如提供更高质量的信息提高取得信息的速度等。 硬件方面公司已经为每个员工配备一台计算机 运行方面本系统的运行所需的材料以及维护费用有限。 培训方面本系统简单易用界面友好只需经过短期培训即可。 因此本系统在经济上是可行的。综上所述本系统的开发和使用完全是可行的。 2.3极光办公自动化系统数据流程图 2.3.1   数据流程图概念 数据流程图DFD——Data Flow Diagram是描述系统逻辑模型的主要工具它可以用少数几种符号综合的反映出信息在系统中的流动、传递、存储、和处理的总情况。数据流程图具有抽象性和综合性两个特点其中抽象性表现在已经完全舍去了具体的物质如组织机构、工作场所、物质流、货币流等只保留了数据的流动、存储、使用及加工的情况。综合性表现在它可以把系统中的各种业务处理过程联系起来形成一个整体。 极光办公自动化系统数据流程图 极光办公 自动化系 统 项目组 整个公司 部门 职员 总经理                       D1   职员资料表   图2.1  极光办公自动化系统顶层DFD F1修改、查询、发送信息等              F2接受信息 F3管理信息        F4修改职员资料   F5返回职员资料    P1 注册 管理 服务器IP    D2                       P2 登陆 管理    P3                  资料 管理                                                     D1   职员资料表 职员                                                   D3    部门表                                                D4    项目组表   F18 总经理 信息 传输 管理 某项目组 某一部门 公司职员 其他职员  图2.2  极光办公自动化系统第一层DFD F1取得服务器IP                    F2写入服务器IP F3职员录入注册资料                F4职员录入登陆信息 F5职员资料                        F6更新职员资料表 F7取得登陆职员资料                F8写入职员资料 F9其他职员资料查询结果            F10职员基本资料修改 F11保存修改资料                   F12取得职员资料 F13取得部门                       F14修改部门表 F15取的项目组                     F16修改项目组表 F17查询职员资料                   F18修改职员特殊资料 F19所需信息                       F20连接请求与交流信息输入 F21交流信息输出                   F22信息记录更新 极光办公自动化系统第一层DFD说明 首先职员输入注册信息注册管理会在服务器IP表里找到服务器IP以便进行数据库服务器的连接连接到数据库以后就会把职员资料插入职员资料表中。注册管理会把职员资料传入登陆管理中如果以前已经注册就可以把资料直接输入登陆管理登陆管理会在职员资料表中取得职员密码进行核对如果输入正确就可以登陆自己的账户并且把用户的状态设为在线。在资料管理中职员可以查询其他职员资料也可以修改自己的基本资料总经理可以修改职员的特殊资料 也有输入部门与组的权限。信息传输管理会根据用户的连接请求对指定的职员进行连接并向其发送信息。也可以向公司全体职员、某个部门的职员或部门中的某个组发送信息。接收信息的职员可以保存信息记录。    P1.1 服务 器IP 管理 D2  服务器IP                                                              D1  职员资料表    P1.2 服务 器 连接    P1.3 信息 核查   如图2.3为极光办公自动化系统第二层DFD的注册管理。首先它会连接本地数据库在本地数据库中的服务器IP表里找到服务器IP地址如果表中存在服务器IP地址那么准备进行数据库服务器的连接如果不存在那么会要求用户输入服务器IP地址然后将服务器IP地址保存进表中以便以后取用。连接好数据库服务器后职员就可以输入注册信息经过核查确认没有用户名相同的情况那么就可以对职员资料表进行更新插入职员注册的资料。 以下是各数据流代表的意义 F1修改服务器IP                  F2查询服务器IP F3服务器IP                      F4输入注册信息 F5表信息取得                    F6插入注册信息    P2.3 用户 本地信息取得 D2  服务器IP    P2.1 服务 器 连接 F1    P2.2 用户 信息 核对                                                  D1 职员资料表 职员  图2.4  极光办公自动化系统第二层DFD 如图2.4为极光办公自动化系统第二层DFD的登陆管理。首先在服务器IP表里查到服务器IP地址进行数据服务器的连接然后在职员资料表中取得用户信息对用户输入的信息进行核查如果输入正确就会取得本地信息如端口号、IP地址等。最后把职员资料表中的用户状态设为在线并把IP地址端口号等进行更新。 F1取得服务器IP             F2登陆信息输入  F3更新职员表               F4该职员信息取得                             D1  职员资料表     P3.2 查询 管理                                  D5 电子公告表 职员 总经理 D3                               D3 部门表                  D6 规章制度表                                  D4 项目组表 图2.5  极光办公自动化系统第二层DFD 如图2.5为极光办公自动化系统第二层DFD的资料管理。职员可以输入修改信息对职员注册信息进行修改职员也可以输入查询信息查询有关企业与用户资料的所有信息。总经理有最高的权限可以修改职员的信息和企业的组织机构包括组的增加与删除部门的增加与删除组与部门名称的修改信息资料的修改等。 以下是各数据流代表的意义 F1修改信息输入                          F2查询信息输入 F3返回查询结果                          F4修改职员表 F5职员信息取得                          F6部门信息取得 F7项目组信息取得                        F8修改职员特殊信息 F9修改、添加部门                        F10: 修改、添加项目组 F11:取得公告内容                           F12: 取得规章制度 F13:输入公告内容                           F14:输入规章制度    P4.2 资料取得处理    P4.1 连接请求处理 职员                                                          D1职员资料表    P4.3 连接其他职员 其他职员           P4.5 连接某一部门 某一部门             P4.4 连接整个公司 公司职员            P4.5 连接某 项目组 某项目组                      信息记录  D5 图2.6  极光办公自动化系统第二层DFD 如图2.6为极光办公自动化系统第二层DFD信息传输管理首先职员选择想要连接的对象输入发送信息然后系统根据职员选择的连接对象在职员资料表中找到所需的连接信息包括IP地址与端口号然后根据选择的连接对象进行相应的连接最后更新信息记录表将职员的信息记录保存到本地数据库。 以下是各数据流代表的意义 F1输入连接信息与交流信息                  F2连接信息 F3其他职员资料输入                        F4其他职员资料取得 F5连接信息与交流信息                      F6交流信息输出 F7更新信息记录 第三章  系统设计 3.1系统设计原则 作为一套应用系统除了要能够完成预定的各种功能外在设计时还必须遵循实用性、完备性、可靠性、安全性、兼容性、可扩充性等原则。具体要求原则如下 (1)安全性  主要是指系统运行的安全性、数据的安全性和保密性等。同时应根据用户的工作和业务流程为用户提供合理可靠的安全策略。    (2)实用性  是系统建设的主要目标。主要是指系统功能应能够满足当前和今后一段时间内企业办公的实际需要。 (3)可靠性  是指系统的数据结构合理、模块功能正确等以保证数据处理和信息传输的正确可靠。   (4)友好性  是指界面的美观和使用的方便程度即界面友好有良好的引导功能、容错和查错功能。    (5)可维护性  是指系统应具有较好的可维护性以方便系统管理员对系统进行维护。    (6)可扩充性  本系统目前还不是很完善以后需要改进的地方还很多。随着计算机在企业各部门应用的进一步深入也后需要增加的功能还很多。另外系统还应该留有一定的接口以便将来扩充的方便等    (7)可移植性和适应性  针对目前我国企业的实际情况系统应具有较强的适应性和较好的可移植性同时尽量避免对硬件的依赖。 3.2系统功能模块设计 极光办公自动化系统有五个子系统 1个人工作子系统 2信息中心子系统 3日常工作子系统 4流转中心子系统 5维护中心子系统 各子系统包含的功能模块如下 个人工作子系统电话簿、总经理工作计划 信息中心子系统信息交流、电子公告、规章制度、新闻信息 日常工作子系统资料管理、办公用品申领 流转中心子系统公文管理 维护中心子系统权限管理、注册管理 如图3.1为本系统的功能模块图 极光办公自动化系统   个人工作子系统 流转中心子系统 日常工作子系统 维护中心子系统 信息中心子系统 信息交流 电子公告 规章制度 新闻信息 资料管理 办公用品申领 注册管理 权限管理 公文管理 总经理工作计划 电话簿               图3.1  极光办公自动化系统功能模块图 3.2.1  个人工作   提供员工个人工作中的基本功能电话簿允许当前用户创建属于自己的名片信息分类、管理个人名片查阅组织内用户的名片、总经理工作计划主要是记录了总经理近期的工作计划等。 3.2.2  信息中心   是本单位发布信息与交流的平台包括电子公告用来向公告板上发布通知、制度、活动和会议等消息、规章制度数据库可以管理规章制度用户可以看到已发布的规章制度、新闻信息企事业单位为让员工了解一些信息而发布本单位的新闻信息和录入一些国际国内新闻等。 3.2.3  日常工作   根据各部门及其工作流程定制相关内容资料管理辅助管理公司内部的各种资料、办公用品申领主要用来对企业中办公用品的使用情况进行统计办公用品领用申请办公用品领用申请进行批阅以及办公用品的领用办理等。 3.2.4  流转中心   根据系统管理中设置的相应流程进行公文流转最终实现无纸化办公提供公文流转实现了收、发文的管理、流转、批约、转出和归档等功能。3.2.5  系统管理   包括组织机构的设置、用户权限角色的定义等功能。把系统管理员从烦琐的管理工作中解脱出来。 3.3系统物理配制方案设计 一、硬件环境服务器端主频2G以上CPU512MB内存通过局域网接入Internet。客户端主频1GHZ以上CPU128MB以上内存20G以上硬盘内部人员通过Intranet访问系统。    二、软件环境服务器端windows2000 Server操作系统SQL Server2000数据库客户端windows 2000 3.4数据库设计 数据库的设计分为逻辑设计和物理设计两部分。在数据库逻辑设计方面可以遵循自顶向下的结构化设计方法确定系统目标后采用E—R图设计数据库的概念模型然后根据此模型导出数据库的关系模型。 用户的需求集中体现在各种信息的提供、保存、更新和查询等方面这要求数据库结构要充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程组成一份详尽的数据字典为后面的具体设计打下基础。 以下为本系统所用到的数据表 1ServerIP表位于本地数据库中用来存放数据库服务器的服务器名或服务器IP地址它由系统自动生成图3-2为该表的具体构成 图 3-2   服务器IP表 2BuMen表位于数据库服务器中用来存放公司的所有部门情况包括部门名称、部门简介。 图3-3为该表的具体构成                    图3-3   部门表 3XinXi表位于数据库服务器中用来存放用户不在线时其他用户给其发送的信息。如图3-4为该表的具体构成。其中userName为发送者用户名XinXiDuiXing为发送的目的地。 图3-4   信息表 4YongHu表位于数据库服务器中用来存放企业内部员工的信息以及用户的状态等。如图3-4为该表的具体构成。其中UserName为用户名Name为用户真实姓名IPAddress为用户的IP地址State为用户的状态是否在线BuMen 为用户所在部门Zu为用户所在组Port为用户使用的端口号。                   图3-4   职员资料表 5信息记录表位于本地数据库中用来存放用户的信息记录如图3-5为该表的具体构成。其中XinXiDuiXiang为用户交流的对象XinXiJiaoHu为用户是发送数据还是接收数据。                   图3-5   信息记录表 3.5输入输出设计 输入设计对系统的质量有着决定性的影响。一是由于输入数据的正确性将直接决定处理结果的正确性二是输入设计是系统与用户的接口决定着人机交互的质量和效率。输入设计主要包括输入方式、校对方式和输入界面及格式等设计。     输出是系统产生的结果或提供的信息。输出设计要正确及时地反映各管理层所需的各种信息系统输出的有效性、输出信息方式的可接受性将直接影响系统的使用效果。输出设计主要有打印方式输出、显示输出、对话输出等。    系统输入输出界面设计  (1)输入界面 极光办公自动化输入界面分两大部分左边部分为公司部门职员选择区采用树形框形式用于分类查找底部为用户发送信息编辑区用于编辑发送信息。用户先在选择区找到相应的职员或部门然后在编辑区内对数据进行信息输入、附件添加等操作各种按纽会根据需要出现在编辑区上方的面板内。  (2)输出界面 输出界面设计在主窗口的右边用于接收其他职员的信息输出界面的下面有一系列的按钮用于对输出信息的操作。  (3)用户界面风格 用户界面的设计对整个系统的有效应用是至关重要的因为它是操作员和管理员直接进行人机对话的重要组成部分。用户界面设计不好或者设计不合理软件系统就难以发挥应有的效益。在本系统中坚持以下原则 采用图形化操作界面形式和术语要适应用户的能力和要求做到六字原则—“简单、方便、一致”尽量符合流行软件界面风格为用户提供一个友好的操作环境用户界面的设计保持一致性系统的命令和菜单具有相同或类似的形式 对于各菜单控件可用鼠标操作外还为用户提供对应的键盘操作功能常用的功能提供快捷键以满足不同用户的操作习惯。 3.6系统的安全性设计 计算机系统的安全一直是用户关注的问题。如何才能使本企业的资料运行于网络之中又不让别人破坏是一个棘手的问题。本系统有强大的权限管理功能。其权限分三种普通员工级权限、部门级权限、经理级权限。由于权限可以按部门指定因而不仅可以方便地设计部门员工的权限还可以指定部门下员工的特殊权限。通过权限设计保证数据的安全性。 第四章  极光办公自动化系统的技术支持与实施 4.1  选择编程语言 SUN公司的Java是一个广泛使用的网络编程语言它是一种新的计算概念。 首先作为一种程序设计语言它简单、面向对象、不依赖于机器的结构、 具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性能。其次 它最大限度地利用了网络Java的小应用程序 (applet)可在网络上传输而不受 CPU和环境的限制。另外Java还提供了丰富的类库使程序设计者可以很方便地建立自己的系统。     由于Java语言在网络方面的优异表现故本系统的实现Java是一个最好的选择然而Jbuilder是业内开发java程序的最好的工具之一所以我选择了Jbuilder作为java的开发工具。 4.2  SQLServer2000 数据库 作为标准的关系数据库至少应具备以下特征    (1)海量数据存储能力    (2)快速有效的数据处理能力    (3)优秀的多用户机制    (4)完善的数据安全控制机制     (5)具有开放性并应与国际标准完全吻合    (6)可靠性、容错性    基于以上特征我选择SQL Server2000作为我的数据库系统平台这主要是因为SQL Server2000是Windows NT平台上性能较好的关系数据库与NT平台在权限管理、目录服务、系统级配合等方面都可以很好地结合。 4.3  java数据库解决方案 在数据库应用中Java的解决方案是JDBC(JavaDatabase Connectivity)。JDBC建立在XOpenSQL CLI(调用层接口)基础上可以编写访问任何关系数据库的统一的纯Java应用程序实现对Internet环境下各种异构关系数据库的访问。同时因为Java的平台无关性采用JDBC编写数据库应用程序的开发者可以真正做到“编写1次随处运行”。 4.3.1  JDBC工作原理 JDBC主要包含2种接口分别是面向驱动程序低层的JDBC Driver API和面向应用程序开发人员的JDBC API。 一 JDBC Driver API JDBC Driver API是为数据库厂商提供的驱动程序的编程接口。JDBC驱动程序是JDBC结构的支柱用于提供与数据源的接口解释和执行来自应用程序中的SQL语句并返回结果。JDBC驱动程序包括4类第l类是JDBC-ODBC Bridge Driver即JDBC桥加上ODBC驱动程序在每个客户机上装入ODBC驱动程序JDBC通过ODBC访问数据库。第2类是Native API(Partly Java Driver)即本机API加上部分Java驱动程序将JDBC调用转换为各种数据库系统的客户API调用。第3类是JDBCNet(Pure Java Driver)即JDBC Net加上Java驱动程序将JDBC调用翻译成独立于数据库网络协议然后再由服务器翻译成数据库协议可与各种不同的数据库相连。第4类是地native(Pure Java Driver)即本机协议加上Java驱动程序将JDBC调用转换为数据库使用的网络协议由客户直接调用数据库服务器。 二  JDBC API JDBC应用程序实现对数据库的访问需要建立与数据库的连接发送SQL语句返回数据结果给客户。应用程序开发人员利用JDBC API来完成这些工作。JDBC API在java.sql包中定义包含JDBC访问数据库用到的所有类和接口主要有    (1)DriverManager类用于装入驱动程序定义在网络上需要访问的数据源的JDBC URL根据定义的URL选择匹配的驱动程序、为建立数据库连接提供支持。    (2)java.sql.Connection接口用于特定数据库的连接。    (3)java.Statement接口为SQL语句提供一个容器包括执行SQL语句、取得查询结果等方法。它包含2个重要的子类。一个是java.sql.PrepareStatement允许在SQL类中输入参数另一个是java.sql.CallableStatement用于执行SQL存储过程。    (4)java.sql.ResultSet接口提供对结果集进行处理的手段。 4.3.2  JDBC应用程序结构 利用JDBC API进行数据库访问的应用程序基本结构如图3-1所示主要包括下列部分    (1)装载驱动程序用DriverManager类提供的ClassforName()方法来加载驱动程序例如用C1assforName(“sun.jdbc.odbc.JdbcOdbcDriver”)语句直接加载SUN公司的JDBC-ODBC桥接驱动程序。                        用C1assforName(com.microsoft.jdbc.sqlserver.SQLServerDriver)可以连接SQLServer2000数据库由驱动程序负责向DriverManager注册在与数据库相连时使用该驱动程序。              图3-1   JDBC应用程序结构 (2)建立与数据库的连接。用DriverManager类提供的getConnection (URL、userNamePassWord)方法来建立与数据源的连接返回一个Connection对象。其中URL参数格式为jdbc:subprotocol:subName。subprotocol指支持数据库连接的驱动程序使用的子协议例如ODBC引擎。subName指数据源的信息、例如数据源的IP地址、端口号、数据源名。    (3)创建语句对象。一旦建立了与数据库的连接就可以利用Statement接口创建SQL语句对象例如Statement stmtconnectcreateStatement()。根据需要还可以创建PrepareStatement对象来处理带参的SQL语句或创建CallableStatement对象来处理SQL存储过程。    (4)执行SQL语句。利用创建的语句对象用StatementexecutedXXX方法来执行SQL语句并返回一个ResultSet对象。例如 ResultSet rsstmt.executeQuery(“select * from YongHu”)执行对YongHu表的查询操作并返回rs结果集。以下代码是结合本系统数据库访问的具体实现 String SQLDriver com.microsoft.jdbc.sqlserver.SQLServerDriver String cUser jdbcmicrosoftsqlserver// serverName 1433       DatabaseNameUser         // serverName代表数据库服务器IP地址或服务器名 try {     try {          Class.forName(SQLDriver)                  //装载驱动          connR DriverManager.getConnection(cUser sa )  //创建连接          stmR connR.createStatement()           //创建SQL语句对象         }     catch (ClassNotFoundException es)               //捕获ClassNotFoundException异常 {                       es.printStackTrace()                 //打印异常抛出地点等信息         }     } catch (SQLException ex)                            //捕获SQLException异常 {                         ex.printStackTrace()     } 以上代码是实现数据库的连接可以连接到服务器名为serverName的SQLServer2000网络数据库。 String  updateStatePort update YongHu set State1,Portportwhere UserName userName ;        //设置用户为在线将本地使用的Port在数据库服务器上更新的SQL语句 String updateIPAddresss update YongHu set IPAddress localIP where UserName userName                 //更新数据库服务器上用户的IP地址 int i stmR.executeUpdate(updateState)     //执行SQL语句         int l stmR.executeUpdate(updateIPAddresss)//执行SQL语句 以上代码可以实现数据库的更新当用户登录后在网络数据库服务器上将其状态设为在线即State为1并将用户本地的IP地址与端口号在表内更新。 4.4  Java局域网解决方案 4.4.1   C/S的概念 客户机服务器网络中以计算机主机或服务器为中心其他计算机、工作站与服务器连接在一起。客户机之间要传递信息均要得到服务器的允许才能进行。在CS模式中将请求服务的一方称为客户(C1ient)将提供服务的一方称为服务器(Server)。服务程序一直在一个服务地址(端口)监听对该服务的请求直到客户对这个服务地址提出请求服务程序为客户请求作出适当的反应。 4.4.2   用Socket实现CS编程    套接字Socket编程采用客户机服务器的网络模式。服务器进程一直驻守在服务器上客户进程向服务器进程发出连接请求服务器进程响应并建立连接服务进程与客户进程建立连接后客户进程发送数据服务进程处理这些数据并将处理结果返回给客户端进程。 4.4.3   Java Socket Java语言为实现其跨平台、制定Internet标准语言、增强与用户的互动等目标在吸收BSD接口函数优点的基础上加入Java跨平台、面向对象、支持Internet等特点推出Java Socket API软件——Java.net。 Java.net的API分为4类处理URL的java.net.URL处理主机名称和IP地址的java.net.InetAddress处理UDP通信协议的java.net.DatagramPacket、java.net.DatagramSocket、java.net.DatagramSocketlmpl等处理TCP通信协议的java.net.ServerSocket、java.net.Socket、java.net.Socketlmpl。 而我们的实际应用中很多程序是基于TCPIP网络编程的这些应用程序中服务器端和客户端要用到的Socket API有    A)服务器端的API    1java.net.ServerSocket 设置通信端口。 2accept  侦听及接受客户端的连接请求并建立与客户端的连接。  3read    接受来自客户端发送的数据。    4write   发送数据到客户端。    5close   关闭Socket及客户端的通信连接。    B)客户端的API    1iava.net.Socket  建立客户端的Socket并尝试与服务器建立连接。 2read   接受来自服务器端发送的数据。    3write  将数据发送到服务器端。    4close  关闭Socket及与服务器端的连接。 4.4.4   Java Socket在CS中的体系结构    服务器端程序用ServerSocket创建服务器进程并用accept方法来进行监听并建立与客户端的连接处理客户端请求并将处理结果返回给客户端。客户端程序用Socket创建客户端进程并与服务器建立连接发送数据给服务器端并接受服务器的处理结果。java Socket在CS模式中的进程交互过程如图3-3Socket是网络编程的基础无论是服务器端还是客户端程序Socket都是不可缺少的元素。          图3-2  java  Socket在CS模式中的进程交互过程图 4.4.5 极光办公自动化系统网络连接 void jButton7_actionPerformed(ActionEvent e) {       //发送按钮按下时触发的事件 String sendLine jTextField1.getText()            //得到发送内容 for (int i 0 i listIP.size() i) {      //与listIP列表里的IP地址建//立连接     try {          Socket socket new Socket(listIP.get(i).toString() 8080)                                                          //与对方的8080端口建立连接          out new PrintWriter(new BufferedWriter(new OutputStreamWriter(                socket.getOutputStream())) true)       //建立输出流          out.println(sendLine)                          //将发送内容输到输出流          socket.close()                                 //关闭连接         }      catch (Exception ex) {         try {           socket.close()                              //如果发生异常也会关闭输出流         }         catch (IOException ec) {         }         ex.printStackTrace()       }     }   } 以上是客户端的代码。它可以实现在主界面中用户点击发送按钮系统就会根据listIP里的IP地址与服务器建立连接其中listIP中的地址会在用户点击JTree时生成。连接成功后会与服务器端建立输出流以便输出信息。 class ServerThread extends Thread {                    //建立内部类       public void run() {                              //内部类所执行的动作       try {           server new ServerSocket(ZhuFrame.PORT)   //建立ServerSocket           while (true) {             socket server.accept()                 //等待客户端的连接             try {               String userName               String userIP socket.getInetAddress().toString().replaceAll(/)                                                    //得到连接成功后的客户端的IP地址               String selectUser select UserNameState from YongHu where IPAddress userIP                 //根据IP地址查找用户名               ResultSet r5 stmR.executeQuery(selectUser)               while (r5.next()) {                 userName r5.getString(UserName)                 if (r5.getInt(State) 1) {                 in new BufferedReader(new InputStreamReader                      (socket.getInputStream()))     //建立输入流                   String getStr in.readLine()     //在输出流中读数据                   String struserName 对你说 getStr                   jdbTextArea1.append(str.replaceAll( )\n)                                                 //输出读到的内容                   socket.close()              //关闭Socket                   if (jTextArea2.getText().equals(请选择成员或部门)) {                     jTextArea2.append(发送对象 userName)                     list.clear()              //清空用户名列表                     listIP.clear()            //清空IP地址列表                     list.add(userName)        //向用户名列表中加入发信息人的用户名                     listIP.add(userIP)        //向IP地址列表中加入IP地址                   }                 }               }               r5.close()             }             catch (Exception e) {               e.printStackTrace()               socket.close()             }           }         }         catch (IOException e) {           e.printStackTrace()         }       } } 以上是服务器端的代码。它是一个线程当调用accept方法后进入等待状态等待客户端程序的连接。当连接建立后会建立与客户机的输入流以便接收信息。如果接受者处于等待状态那么会把发信息职员的用户名与IP地址分别保存到list与listIP两个表中以便接受者直接回复信息节省查找用户的时间。 4.5  系统界面解决方案 4.5.1 Java Swing的原理和特点    Java开发工具包(JDK)包含了一个复杂的图形API和用户接口API的集合该集合的核心软件被称为Java的基础类(JFC)。Java Swing是JFC中的一个重要的技术其组合了大量的可用于构建复杂用户界面的轻量级组件。Swing组件是现有的抽象窗口工具包AWT组件的增强但它又不完全取代AWT组件这两种组件可以用在同一个界面上。本系统选择Java Swing组件进行开发是由于Swing组件具有两个很显著的特点轻量级和可插入外观。    ·轻量级组件并不是指其体积小而是组件不依赖于“对等类”(“Peer”classes)而由Java的其他类所支持。所谓“对等类”是指本机系统类。因为Java Swing中的大多数组件都有其自己的由Java外观类所支持的视图而并不依赖于本机系统类。所以Swing组件集都为轻量级组件。    ·可插入外观组件(Pluggable Look—and—feel)允许应用程序能够在不重新启动的情况下看到Swing组件的外观效果。通常本机外观效果是针对程序所运行的特定系统平台来确定的(如Windows和Motif等)。而由于Swing支持跨平台的外观(也称为Java外观)使得应用程序不论在哪个操作系统平台上运行都具有同样的效果。固本系统所有的界面均选用Java Swing进行开发。 4.5.2   用JTree实现公司部门人员分类    Jtree使用人们熟悉的文件夹和树叶图来显示分层的数据。应用最广泛的树组件无疑是Windows Explorer它包含一个用于导航目录的树组件。    树由许多类和接口组成这些类和接口在swing.tree包中定义swing包中的JTree类代表树组件。树由节点组成节点可以是文件夹也可以是树叶。文件夹可以是子节点除根节点之外的所有节点都是只有一个父节点。查询树中的文件夹和树叶都来自数据库因此树的结构很复杂。本系统树组件位于系统主界面的左侧用于员工的分类查询它可以清楚地描述各部门各员工的层次关系使企业的组织机构一目了然。本系统树组件实现的代码 public JTree jbInit() throws Exception {                 //方法的返回类型为JTree     boolean flag true     String buMenName DefaultMutableTreeNode top new DefaultMutableTreeNode(公司各部门成员一览)                                                      //定义树根     String searchBuMenName select * from BuMen     String searchBuMen     String userName     ResultSet r1 stmR.executeQuery(searchBuMenName)     int i -1                                         //使list可以取到     while (r1.next()) {       i i 1       buMenName r1.getString(BuMenName)       searchBuMen select * from YongHu where BuMen buMenName                                                    //从用户表里查找属于该部门的成员       ResultSet r2 stmR.executeQuery(searchBuMen)       DefaultMutableTreeNode dmtn new DefaultMutableTreeNode(buMenName)                                                    //定义树枝       list.add(dmtn)                             //将树枝保存到list表中       while (r2.next()) {                   userName r2.getString(UserName)         DefaultMutableTreeNode dmtn1 new DefaultMutableTreeNode(userName)                                                //建立树叶         dmtn.add(dmtn1)                      //将树叶加到树枝上       }       r2.close()       r1 stmR.executeQuery(searchBuMenName)       for (int j 0 j i j) {         r1.next()                                 //使r1继续执行       }       top.add(dmtn)                               //把树枝与树叶加到根       }       r1.close()       tree new JTree(top)                         //初始化JTree JScrollPane jsp new JScrollPane(tree) //将JTree包含到JScrollPane中使JTree加上滚动条       return tree       } 以上代码可以根据数据库服务器上的YongHu表动态的生成Jtree这棵树可以清楚地体现整公司各部门各员工之间的关系 在查询中树节点选取是很重要的当双击某一节点时要能提取该节点的信息并同时击活一个事件.下面结出了本系统的addMouseListener()和mousePressed()方法. void jTree1_mouseClicked(MouseEvent e) { //树click     List getSelect gouZaoJTree.treeConsult(e)    //得到所选择的对象     list getSelect     jTextArea2.setText()     if (list.size() 1) {                         //发送对象为1个       jComboBox1.setVisible(false)       String listText list.get(0).toString()       if (listText.equals(请选择成员或部门)) {    //如果什么都没选         jTextArea2.setText(请选择成员或部门)       }       else {                                      //选择一个对象的情况         jTextArea2.setText(发送对象 listText)         listIP.clear()                          //清空listIP列表         searchIP select IPAddress from YongHu where UserName listText                                              //找到选择用户的IP地址         String ipAddress         try {           ResultSet r4 stmR.executeQuery(searchIP)           while (r4.next()) {             ipAddress r4.getString(IPAddress)  //得到IP地址             listIP.add(ipAddress)                  //将IP地址保存到列表中           }           r4.close()         }         catch (SQLException ex) {           ex.printStackTrace()         }       }     } else if (list.size() gouZaoJTree.getChengYuanCount()) {                                                  //发送对象为整个公司       jComboBox1.setVisible(false)       jTextArea2.setText(发送对象公司所有成员)       listIP.clear()       searchIP select IPAddress from YongHu       String ipAddress       try {         ResultSet r4 stmR.executeQuery(searchIP)         while (r4.next()) {           ipAddress r4.getString(IPAddress)           listIP.add(ipAddress)         }         r4.close()       }       catch (SQLException ex) {         ex.printStackTrace()       }     }     else {                              //发送对象为整个部门       jComboBox1.setVisible(true)       jTextArea2.append(发送对象 list.get(0).toString().replaceAll( ))       for (int i 1 i list.size() i) {       //向用户基本资料里输出         jTextArea2.append( list.get(i).toString().replaceAll( ))       }       jComboBox1.removeAllItems()                   //选择要发送的组       jComboBox1.addItem(发送至部门内所有人)       listZu.clear()       for (int i 0 i list.size() i) { //向选择组里输出         boolean flag true         String selectZu select Zu from YongHu where UserName             list.get(i).toString()         try {           ResultSet r3 stmR.executeQuery(selectZu)           String str           while (r3.next()) {             str r3.getString(Zu)           }           for (int j 0 j listZu.size() j) {             if (str.equals(listZu.get(j))) {               flag false               break             }           }           if (flag) {             listZu.add(str)             jComboBox1.addItem(str)           }           r3.close()         }         catch (SQLException ex) {           ex.printStackTrace()         }       } 当用户点击tree它会根据具体的情况返回你点击的职员的资料当点击部门时用户可以选择部门下的某个组进行群发也可以给整个部门群发当点击某个用户时可以给该用户发送消息当点击整个公司时可以给整个公司的成员进行群发。这样会节省发送人的很多时间。 结束语     本文在分析中国办公自动化现状和存在问题基础上分析了中国办公自动化的特点和要求并根据南开创元信息技术有限公司的实际情况开发了一个颇具特色的办公自动化系统——极光它代表快速高效与界面美观并存。在实际应用中得到了较好的效果。在本文中介绍了极光办公自动化系统的体系结构、开发思想、功能模块设置。 最后系统还存在以下不足之处以后应该改进 本地的数据库设置多余应该把服务器IP地址保存在本地的文本文件中将信息记录直接保存在服务器上。这样就免去了用户在本地安装SQLServer的麻烦。系统的功能有些单薄需进一步完善。 参考文献 [1][美]Louis Davidson 著《SQL Server 2000 数据库设计权威指南》 中国电力出版社2003年4月 [2] 刘韬 楼兴华 著《SQL Server 2000数据库系统开发实例导航》人民邮电出版社2004 年 5 月 [3] 丁宝康 主编《数据库原理》经济科学出版社2000年5月 [4] 罗晓沛 主编《数据库技术》华中科技大学出版社2000年8月 [5] 陈宗兴  著, 《SQL Server程序设计超级管理篇》, 中国铁道出版社 2002年8月出版 [6] 吴其庆  著《JBuilder9编程思想与实践》冶金工业出版社2003年10月 [7] 陆正中  著《JBuilder 9软件开发项目实践》清华大学出版2004年3月 [8] 埃克尔侯捷 著《JAVA编程思想》 机械工业出版社 2002年2月1日 [9] 邵荣 著 《Java 编程实践指南》 清华大学出版社  2003年6月1日 [10] 姜浩 著《办公自动化系统及其应用》清华大学出版社2004年5月 [11] 冯继生 著《办公自动化与网络技术》 人民出版社2003年12月1日 [12] 李铄 著 《办公自动化技术》 蓝色畅想出版社 2003年7月1日 [13] (美)哈格等 著《信息时代的管理信息系统》机械工业出版社 2004年3月 [14] 吴琮璠 谢清佳 著《管理信息系统》 复旦大学出版社 2003年10月 参考资料 java毕业设计——JAVA办公自动化系统(源代码论文外文翻译).zip java毕业设计——JAVASQL办公自动化系统(源代码论文外文翻译).zip
http://www.tj-hxxt.cn/news/140635.html

相关文章:

  • 手机什么app做网站湖南禹班建设集团网站
  • 网站的新闻栏与产品栏如何做办公用品网站建设策划书
  • 温室网站建设什么是网站建设策划
  • 深圳建站网站模板河北省住建和城乡建设厅网站
  • 佛山网站建设 骏域网站网站建设备案优化之看
  • 北京网站外包公司营销型网站建设原则
  • 网站建设子栏目文案保定市做网站
  • 网站404怎么做如何弄微信小程序店铺
  • 网站的回到顶部怎么做个人网页源码
  • 衡水专业网站设计旅游网站建设要求
  • 南京机关建设网站html遇到的问题及解决方法
  • 广州建设银行官方网站广东华迪工程建设监理公司网站
  • 网站开发属于技术合同公众号开发简单吗
  • 温州网站建设制作公司网页二级网站怎么做
  • wordpress网站名品传集团网站建设
  • 网站建设提供资料网站系统商城
  • 门头沟网站开发实验中心网站建设
  • 漯河市城市建设投资公司网站焦作网站建设公司排名
  • 酒店宾馆客栈旅馆古典网站源码 asp源码带后台北京旅游网站排名
  • 做特产的网站的分析广告引流推广平台
  • 长沙免费模板建站室内设计专业招聘信息
  • 做网站 客户大概会有那些问题湖南百度推广代理商
  • 动易网站频道栏目字体大小修改登录官方网站
  • 公司不需要做网站了烟台商城网站建设
  • 珠海找工作哪个网站好手机app编程教程
  • 企业网站seo诊断怎样登录微信开发者平台
  • 网站生成小程序北京信息港
  • 专业做家居的网站中国建筑工程个人信息网
  • 东莞型网站建设怎么做网站推销自己的产品
  • 建设一个网站首先需要什么问题新闻列表做的最好的网站