毕业设计(论文)-基于J2EE的企业办公自动化系统.doc_第1页
毕业设计(论文)-基于J2EE的企业办公自动化系统.doc_第2页
毕业设计(论文)-基于J2EE的企业办公自动化系统.doc_第3页
毕业设计(论文)-基于J2EE的企业办公自动化系统.doc_第4页
毕业设计(论文)-基于J2EE的企业办公自动化系统.doc_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

闽江学院本科毕业论文(设计)题 目 基于j2ee的企业办公自动化系统 学生姓名 xxxxxxx 学 号 xxxxxxxxxxx 系 别 计算机科学系 年 级 2009级 专 业 计算机科学与技术 指导教师 xxxxxx 职 称 副教授 完成日期 2011年11月10日 闽江学院毕业论文(设计)诚信声明书本人郑重声明:兹提交的毕业论文(设计)基于j2ee的企业办公自动化系统,是本人在指导老师 xxxxx 的指导下独立研究、撰写的成果;论文(设计)未剽窃、抄袭他人的学术观点、思想和成果,未篡改研究数据,论文(设计)中所引用的文字、研究成果均已在论文(设计)中以明确的方式标明;在毕业论文(设计)工作过程中,本人恪守学术规范,遵守学校有关规定,依法享有和承担由此论文(设计)产生的权利和责任。声明人(签名):年 月 日摘 要 本文介绍基于j2ee开发平台上,以先进的信息技术实现日常工作管理,系统用网络数据库将企业内员工的基本信息统一管理起来,形成集成的信息源,系统会根据员工所属部门对员工进行分类,这样有利于发送者快速找到发送目标,在该系统中超级管理员具有最高的权限,负责对系统的管理,该系统可使企业内员工之间信息的交流更高效,更便捷,也使企业内各部门之间员工的频繁往来减到最少,从而提高企业整体的办公效率,为企业节约成本,使企业在激烈的市场竞争中赢得优势。系统开发任务主要包括前台界面的设计和后台数据库管理的设计。经过详细的分析和调查,本设计采用myeclipse6.5、tomcat6.0、jdk1.5作为开发工具,后台数据库采用oracle 10g数据库设计,利用jndi数据库访问技术实现对数据库的各种管理操作,实现办公自动化的基本功能及管理功能。关键字:j2ee 、办公自动化、工作流 、b/s架构、mvc模式abstractthis article describes a management systerm which is based on the j2ee development platform . it can manage the daily activities by advanced information technology. this system can achieve unified management for the basic information of employees in the enterprise using the network database, and form an integrated source of information.the system will classify the staff by department, it can help the sender quickly find target. the super administrator in the system has the highest authority, responsible for management of the system. the system doesnt only allows exchange of information more efficiently and more conveniently between the staff in enterprise, but also minimize the frequent exchanges between departments in enterprise and improve their overall work efficiency, get cost savings for enterprises so that enterprises can win advantage in the fierce market competition . system development tasks include foregroud interface design and backgroud database management design . after detailed analysis and investigation, i uses myeclipse6.5, tomcat6.0, jdk1.5 as a development tool, background database design using oracle 10g database, using jndi database access technology to achieve various database management operations,and complete the basic functions and management functions for office automation.key word:j2ee, office automation, workflow, b/s structure, mvc mode 目 录1引言11.1办公自动化的概念11.2 我们办公自动化发展现状21.3 系统开发背景31.4 系统开发目的31.5系统开发意义41.6 系统实现目标52系统需求分析62.1 系统的可行性分析62.1.1经济可行性62.1.2 操作可行性62.1.3 技术可行性62.2 需求分析62.2.1 需求概述62.2.2 系统的功能需求72.2.3 主要的模块的时序图82.2.4 系统组织功能结构图113系统开发工具及技术简介123.1 开发环境123.2 系统的开发技术143.2.1 mvc模式143.2.2 b/s框架153.2.3 struts 2框架163.2.4 spring 框架173.2.5 javascript技术174数据库技术194.1 数据库概念结构设计194.2 数据库逻辑结构设计214.2.1 主要信息表的简介214.2.2 数据库关联图:255系统详细设计265.1 系统用户登录模块265.1.1 用户管理模块275.1.2 菜单管理模块295.1.3 个人小贴士管理315.1.4公告管理模块335.1.5邮件管理模块355.1.6 作业流程管理模块386系统测试406.1 系统测试的内容406.2 模块测试406.2.1 登录模块测试406.2.2 用户管理模块测试416.2.3 作业流程模块测试416.3 系统维护42结束语44致谢45参考文献46 基于j2ee的企业办公自动化系统基于j2ee的企业办公自动化系统1引言办公自动化(oa,office automation)是发达国家在遇到办公业务量急剧增加导致对企业生产率产生巨大影响问题的情况下,发展起来的一门综合性技术。它的核心就是提高效率。在利用科学技术的条件下,使人们借助各种设备解决一部分办公业务的处理,从而达到提高办公效率,提高响应速度,提高生产效率,提高决策能力的目的1。1.1办公自动化的概念办公自动化(office automation,简称oa)于20世纪50年代提出,在80年代至90年代得到了飞速的发展,办公自动化作为一门学科已越来越多地受到人们的重视,其内涵和外延也在不断地扩大,但目前尚未形成一个严格统一的定义。当前一些较为普遍的观点认为,办公自动化是以先进的科学技术-信息技术,系统科学和行为科学-为支柱的一门综合性技术。它以科学为理论基础,行为科学为主导,综合运用信息技术(包括电子技术,计算机和通信技术等)完成各种办公业务,充分有效地利用信息资源,以提高生产效率,工作效率和工作质量,辅助决策,促进办公活动规范化和制度化,以达到既定的目标,获取更好的效果。办公自动化从诞生到现在,大致经历了四个阶段:第一个阶段是以硬件it为标志,随着打字机,复印机,扫描仪以及计算机等的出现,它使办公电子化。这些硬件的出现,初步解决了个人办公中出现的手工操作部分。比如文件的抄写,各种凭证的打印,它是办公自动化开始阶段。第二个阶段是以桌面级办公软件为标志,比如微软的office,excel;比如ibm的lotus1-2-3;金山的wps等的出现,它是办公文档电子化。这些桌面办公软件的出现,进一步解放了个人在企业日常办公时在处理,将各种纸质的文件转变成电子化的文档。比如财务报表,起草文件,制作演示文件,同时在这个阶段由于局域网和服务器的支撑,让这些电子化的文档达到初步的信息共享和传递,比如基于文件夹共享方式的。但这种协同式的信息共享和传递,主要还是松散式的,不成体系。第三阶段是以网络、intenet、企业级协同办公平台的出现为标志。企业级协同办公软件比如ibm公司的lotus系列软件,微软公司的exchange软件等等。这个阶段的主旋律是协同办公管理。特点是以网络为基础,以internet为手段,采用企业级协同办公软件为核心,开发出了大量的办公自动化软件,mail系统成为企业与企业之间,员工与员工之间进行沟通、交流的主要方式;而办公自动化软件则成为企业内部日常办公中协同、协作的主要方式。国内大部分的办公自动化服务商基本上提供的服务都是在这个范围。第四个阶段是企业数字神经网络。作为协同办公,只是企业内部信息化需求的一部分。作为企业信息系统数字神经网络一个整体而言,协同办公在这个阶段需要和其他系统进行良好的整合,进行协同式商务。同时在协同办公领域自身也开始出现市场细分化,应用专业化方向发展。对协同办公的需求内容将进一步细化和深化,出现专业的协同管理软件2。1.2 我国办公自动化发展现状进入20世纪90年代中期以后,由于国内经济的飞速发展引发市场竞争的逐渐激烈,以及政府管理职能的扩大和优化,这一切导致政府和企业对办公自动化产品的需求快速增长。这时,办公自动化开始进入一个快速发展的阶段。国内专门从事软件开发的公司也逐渐成长起来,并专门为政府和企业订做办公自动化系统。由于这些系统是根据用户的具体需求开发的,所以需要功能比较完善,并能较好地满足用户的实际需要。但这是一个巨大而低效的oa市场,具体表现在投资大、效果不明显;水平低、重复建设多;硬件投入多、软件投入少;模拟手工作业增加管理负担等。这是因为开发商水平参差不齐,开发队伍组队模式不合理、缺乏开发办公自动化产品的经验、用户缺乏对办公自动化产品的认识等;部分软件产品质量不高,不顾中国企业的运作特点照搬国外技术,使得实施困难;对oa的理解起点不高,导致oa系统与其他系统集成度差;用户使用水平低,又不愿花太多的精力投入培训;售后服务不到位;定做开发又会因用户需求变化要对软件进行不断的修改维护。到最后,整个软件的性能和可使用性都大大降低,没有耐性的企业索性废弃掉从而导致项目失败。从技术来看,普遍存在如下缺点:为用户考虑的少,软件的柔性构造功能差。当前很多oa软件过分强调了软件之间功能的横向对比,为用户考虑的实际功能比较少,结果导致软件大而全,而真正为用户接受的功能模块很少。另一方面,软件的模块复用性很差,直接影响了软件的柔性构造功能,而当用户的需求改变时,哪怕是轻微的改变,都需要开发商来解决,从而影响了用户的使用效率,对开发商也是一个极大的负担3。1.3 系统开发背景传统的办公方式极大低束缚了人的创造力和想象力,埋没了人的智慧和潜能,使人们耗费了大量的时间和精力去手工处理那些繁杂、重复的工作,手工处理的延时和差错,正是现代化管理中应该去除的弊端。随着企业信息化程度的提高,企业的计算机应用系统不断增加,这种oa系统越来越不能满足需要。伴随着企业对信息化需求的增长,计算机、网络技术已渗透到企业的日常工作中。一个具备一定规模的现代化组织,在其内部办公运作过程中对信息资源共享和信息实时交流的要求越来越高,高效的办公行政流程和业务运作的信息实时交流的要求越来越高,高效的办公行政流程和业务运作的规范管理成为提高机构管理水平和办公效率,减少资源的消耗,提高机构服务水平的必不可少的手段和方法。另一方面,在企业的经营过程中,知识往往仅存在于相关人员的头脑中,长期以来,一直难以与其他人共享,难以凝聚为整个企业的知识资源。oa的工作,就是要借助于信息技术的支持,发现。记录和保存人们在工作中不断形成和积累的知识,也包括经验,将其转化为企业的知识资源,并且加以组织、利用,从而为企业创造财富,这就是“知识管理”。面向企业的办公自动化系统,应该具备知识管理的基本功能4。通过营造高效率的协作办公环境,建立与企业业务流程紧密结合的工作流应用系统,实现切实可行的知识管理,并在此基础上拓展和深化企业信息系统的功效,必定能使企业在新的市场经济环境下有效地高效得提高自身的快速响应能力和创新能力,从而保持其竞争优势和可持续发展的能力。1.4 系统开发目的基于j2ee企业办公自动化系统的开发主要目的是:能够实现现有的邮件收发、作业流程、用户管理、角色管理、公告管理等功能,能够实现数据的传送和管理,能够按不同的要求进行数据查询,能够及时的反馈信息。系统的运行环境要求较低,操作简便,易学,易推广。 系统以web浏览器为平台,提供多角度的工作模式。譬如说:系统对用户进行三级权限划分,对员工只有查看公告、邮件管理、小贴士设置、执行作业的权限,普通管理员比员工的权限多了:用户管理、角色管理、菜单管理、公告管理(新增公告、管理公告)、数据字典管理、作业流程管理;而对超级管理员比普通管理员多了:审核公告、设置审核时间、添加部门的权限。1.5系统开发意义本系统对于现代办公自动化而言,其目的已经不局限于减轻员工的工作量,而是要将员工从繁琐的事务性工作中解放出来,用更多的经历去关注最重要的事情,从而提高企业的效率,增强企业的综合竞争能力,在这种办公模式下,企业的组织结构得到简化各个部门在信息共享的基础上进行协作,便于明确各个部门甚至每个员工的责任,而决策层可以迅速综合来自各个方面的信息,并以此为依据制定企业的战略决策。从这个意义上讲,在市场竞争日趋热化的今天,办公自动化已经不再是一种手段、一种工具,而成为决定企业生存发展的命脉。随着信息技术的发展和国内信息技术应用水平的提高,在办公过程中传统的工作方式和审批模式已经难以满足新的需求,实现办公自动化已经是提高企业单位办公效率,规范管理的必然趋势。办公自动化系统带来的好处有:(1)信息传递与沟通交流顺畅通过构建内部通讯、信息发布与交流平台,实现多途径的联络与沟通,建设信息的在途时间,提高信息的时效性,与此同时,缩短领导与职工之间,各部门之间的距离。(2)规范工作管理,提高整体效率解决了跨地域部门多岗位间的业务处理诸多问题,有效避免工作中出现的脱节、延误、错办等情况,杜绝职责不清、工作推脱等怠工现象,实现网上协同办公,增强组织协调能力,提高团队协作能力。同时,加强了工作管理。(3)整合信息资源,实现知识管理彻底改变文件丢失遗漏、管理分散、查找不方便等现象,解决因人事变动导致经验流失等问题,通过知识管理,有效整合并积累各类资源,实现再利用。(4)增强凝聚力,提高响应能力在降低管理成本,促进管理进步的同时,能够培养全员信息关注与参与意识,激发掌握和利用先进技术的热情,提高专业素质,形成全新的企业文化。办公自动化是信息社会的的一种新型办公方式,它将现代化办公和计算机网络功能结合。随着信息技术的发展,办公自动化在行政企事业单位的管理、经营活动中发挥日益重要的作用。通过网络,组织机构内部的员工可跨越时间、地点协同工作。通过办公自动化系统所实施的交换式网络应用使信息的传递更加快捷和方便,从而极大地扩展了管理手段,实现了运营的高效5。1.6 系统实现目标1) 通用性:基于先进的系统模型,使得系统能够适用于不同行业,不同规模的用户。2)易用性:b/s结构使用户端不必安装任何软件,只要有浏览器并连接到internet即可使用,免除了非专业人员维护系统的困难。3)实时性:所有的数据均实时处理,也可实时查询。4)功能丰富风格统一的外在应用。5)将企业内联网和互联网有机结合,提供企业内部信息化的网络平台。6)为企业办公提供先进实用的办公应用系统,为企业实现高效率的办公管理。7)为企业异地办公提供全面可靠的安全解决方案。本系统可以适用:公司企业及其分支结构。本系统采用b/s模式开发,用于实现企事业单位的办公网络化。采用 b/s模式的目的又是在于系统简单,功能强大、扩张能力良好以及跨地域的操作性能。2系统需求分析2.1 系统的可行性分析可行性是系统开发的一项关键步骤,它是通过对整个系统的需求,技术及开发方法,以及开发人员,所需资金的总体虑以评估对于该系统的开发是否符合实际。可行性分析包括经济可行性、技术可行性、操作可行性。2.1.1经济可行性通过网站对企业内部信息进行全面的自动化管理,大大提高了企业的办公效率。通过系统对员工进行工作的全面管理和统计,避免人为处理各类数据所产生的各种问题,提高企业的经济效益,为企业经营决策提供了大量的、权威的数据,是企业的管理进行到、科学化、系统化的范畴。硬件方面主要是计算机,我们的实际情况可以满足开发任务,所需资料书籍可以到图书馆翻阅,因此整个系统的所需投资符合我们的支付情况,经济可行性良好。2.1.2 操作可行性基于j2ee的中小型企业的办公自动化系统采用模块化的开发方法,将整个系统划分为多个功能模块,并根据开发小组成员的实际能力分配相应的模块,这种将系统功能平行划分的方法有助于系统开发的组织和管理。2.1.3 技术可行性本系统的开发采用了先进成熟并且符合实际应用的开发方法,方法应用于网站开发的工具myeclipse、dreamweaver,动态网页开发技术jsp和mvc架构技术strusts、spring,功能强大的数据库管理工具oracle,结合自己的实际开发能力,可以开发出较为完善的办公自动化系统。2.2 需求分析需求分析是软件开发最基本的,也是最重要的一点。它是所有开发的前提,要是在没有搞清用户的需求之前,就动手设计编程,其后果是无论程序做的如何都是徒劳的。2.2.1 需求概述需求分析的基本任务是“系统必须做什么?”虽然在可行性分析阶段已经粗略了解了用户的需求,但可行性研究的基本目的是用较小的成本在较短的时间内确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量,因此,必须对软件需求分析进行严格的审查分析。2.2.2 系统的功能需求随着企业单位规模的不断壮大,单位内部信息处理急剧增加,而传统的信息处理手段都是一级一级传达的繁琐。职工只要通过上网就能达到查看工作安排和相互交流信息的目的,而且可以实现单位内部进行信息的传递交流、信息的发布和讨论以及对个人事务进行良好管理的办公系统。本系统简单易用,能够提高个人的办公效率,并为单位各部门协调工作打好基础,从而提高单位的办公效率,减少单位管理的工作量。本系统的主要功能说明如下:(1) 用户登录用户的管理分为三级权限,员工、普通管理员、超级管理员。每个用户要进入系统都必须先到登陆模块。用来验证用户的合法性。如果登录失败进行相应提示并重新登录,密码错误超过三次,关闭页面,用户名跟密码必须是由管理员后台分配的数据。a 用户名:必填,且必须是英文字母或数字, 长度3-15;b 密码: 必填, 且长度3-15;c 验证码:必填,4位数字;(2) 用户信息管理 本模块主要管理企业员工的信息,管理员可以增加、删除、查看以及修改,以及可以按用户账号、姓名进行模糊查询;按所属部门精确查询。(3)角色管理本系统默认设有三种角色:员工、普通管理员、超级管理员,超级管理员拥有所有权限,普通管理员可以增加、查看、删除角色的权限,但是只能对普通管理员跟员工的权限进行修改,不能对超级管理员进行修改权限。删除一个角色,同时要删除分配给该角色的所有菜单功能。只有超级管理员才能删除角色;角色使用中是不能被删除。(4)菜单管理可以对所有的功能菜单:【用户管理】【角色管理】【菜单管理】【个人小贴士】【公告管理】【邮件管理】【数据字典管理】【作业流程】进行排序、删除、编辑。菜单名称必须唯一,删除大菜单时要将底下所属的小菜单一起删除并提示。所有的删除都必须为伪删除,使用中的菜单不能删除。(5)个人小贴士 可以设置要提醒的项目(新公告、新邮件)、显示类型(不显示、间隔显示)如果显示类型选择的是间隔显示,设置间隔显示时间(单位为秒)。在用户登录系统后,在界面的右下角弹出一个小窗口,其内容为:公告提醒(未查看数目)、未读邮件提醒(未读邮件数目),点击相应的链接可以转到相应的处理页面,浏览过的公告、邮件在小贴士中要有相应的减少。(6)公告管理 该模块用作用户发送通知,大家可以查看,只有发送公告的用户才可以修改、删除,其他管理员只可以删除公告,员工之需要浏览发布出来公告就可以了,本模块中应该保存的信息由:公告标题、发布时间、有效时间、公告内容、还可以上传附件,最多三个附件,每个附件大小在5m以内。修改公告:可修改未审核的公告的标题、内容、有效时间及附件。已审核的公告不能修改;审核公告:添加新公告后,超级管理员审核通过才可以发布,规定时间内不审核,默认通过,审核时间可以由有权限的用户设置。(7)邮件管理 本模块可以发送邮件、收件箱、垃圾箱、草稿箱、已发邮件。可以发送附件,附件数最多三个,每个附件大小控制在5m之内。邮件发送后保存到已发邮件,收件箱中,未读邮件要有明显提示标志。邮件若带附件,可以下载,读取邮件时可选择直接回复、转发、直接删除、转到垃圾箱,删除时要注意删除对应的附件;草稿箱里德邮件可以直接删除,附件必须一起删除;垃圾箱删除为永久删除,垃圾箱中的邮件可以转为收件箱。(8)作业流程管理就是企业领导下发需求、组长分配任务、员工完成并提交任务的过程,新增作业:根据要求填写任务的分配组长、标题、内容、以及备忘;修改/删除作业:修改未分配的作业,分配完的作业不能修改。分配作业:组长拥有分配的权限,可以分配给具体某个员工,有需要完成内容、完成时间的信息。执行人未完成都可以重新分配,完成后不予以修改。执行人完成任务点“完成”给分配人审核,审核通过作业流程完成。不通过,重新执行,直到作业审核通过为止。2.2.3 主要的模块的时序图用户登录顺序图如下图所示:图2-1 用户登录权限管理顺序图如下图所示:图 2-2 权限管理个人小贴士顺序图如下图所示:图 2-3 个人小贴士内部邮件顺序图如下图所示:图 2-4 内部邮件公告审核顺序图如下图所示:图 2-5 公告审核2.2.4 系统组织功能结构图图2-6 组织功能结构图3系统开发工具及技术简介3.1 开发环境(1)jdk软件安装java开发包(java 2 software development kit,简称jdk)是进行java软件开发的前提,jdk 1.5是目前最常用的版本,所以本文是基于jdk 1.5开发的。我们开发j2ee的系统,却需要安装的是j2se的jdk是开发任何java系统必须安装工具包,而j2ee是指ejb、jsf等这些工具包,在不需要开发这些功能时是不需要安装的。设置系统环境变量的方法:1、设置系统变量java_home。右击【我的电脑】图标,选择【属性】-【高级】-【环境变量】菜单项,弹出“环境变量”对话框,如图3.1所示。在【系统变量】中单击【新建】按钮,弹出“新建系统变量”对话框,在“变量名”文本框中输入“java_home”,“变量值”文本框中输入jdk的安装路径“e:anzhuangjavajdk1.5”如图3.2所示,单击【按钮】完成配置。2、设置系统变量path。选择【属性】-【高级】-【环境变量】菜单项,在【系统变量】中找到变量名为“path”的变量,单击【编辑】按钮,在前面输入jdk到bin的目录“e:anzhuangjavajdk1.5bin”,如图3.3所示,单击【确定】按钮完成配置6图3.1 环境变量对话框图3.2 新建系统变量对话框图3.3 新建用户变量(2)web 服务器tomcat tomcat是apache-jarkarta的一个子项目,是一个免费的、开放源码、支持jsp和servlet技术的容器,它同时又是一个web服务器软件。 tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试jsp程序的首选6。在本系统中我们选用稳定版本tomcat6.0进行开发。(3)集成开发工具myeclipse是目前流行的java集成开发工具。是对eclipse ide的扩展,利用它我们可以在数据库和j2ee的开发、发布,以及应用程序服务器的整个方面极大的提高工作效率。它是功能丰富的java ee集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持html、strust,jsf,css,javascript,oracle、tomcat。myeclipse6.0以前版本需要安装eclipse。myeclipse6.0以后版本安装时不需要安装eclipse。6(4)数据库软件oracle oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将oracle作为其应用数据的处理系统。 oracle数据库是基于“客户端服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动7。 支持多用户、大事务量的事务处理 数据安全性和完整性的有效控制 支持分布式数据处理 安装条件:1、操作系统支持:oracle 10g支持广泛的操作系统平台,支持windows 2000、window xp以及windows 2003。不支持window 98和windownt2、硬盘配置:物理内存(ram):最低位256mb,推荐512mb以上 ;适配器:256色;处理器:最小为550mhz3、磁盘空间的要求3.2 系统的开发技术3.2.1 mvc模式mvc架构是model-view-controller的缩写,中文翻译为模型-视图-控制器。mvc应用程序总是由这三个部分组成。event(事件)导致controller改变model或view,或者同时改变两者。只要controller改变了models的数据或者属性,所有依赖的view都会自动更新。类似的,只要controller改变了view,view会从潜在的model中获取数据来刷新自己。mvc优点:大部分用过程语言比如jsp、asp、php开发出来的web应用,初始的开发模板就是混合层的数据编程。例如,直接向数据库发送请求并用html显示,开发速度往往比较快,但由于数据页面的分离不是很直接,因而很难体现出业务模型的样子或者模型的重用性。产品设计弹性力度很小,很难满足用户的变化性需求。mvc要求对应用分层,虽然要花费额外的工作,但产品的结构清晰,产品的应用通过模型可以得到更好地体现。 首先,最重要的是应该有多个视图对应一个模型的能力。在目前用户需求的快速变化下,可能有多种方式访问应用的要求。例如,订单模型可能有本系统的订单,也有网上订单,或者其他系统的订单,但对于订单的处理都是一样,也就是说订单的处理是一致的。按mvc设计模式,一个订单模型以及多个视图即可解决问题。这样减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护。 其次,由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用。 再次,由于一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动mvc的模型层。 控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说是包含了用户请求权限的概念。 最后,它还有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。83.2.2 b/s框架b/s模式(browser/server,浏览器/服务器模式)是随着internet技术的兴起,l9+bj e5n - 保护版权!尊重作者!反对盗版! 中国大悟论坛 版权所有 - 9q?ij)=d对c/s模式应用的扩展,是web兴起后的一种网络结构模式,web浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。e mo lvn- 保护版权!尊重作者!反对盗版! 中国大悟论坛 版权所有 -bv _k 7 q 在这种结构下,lc#k4,%3ug- 保护版权!尊重作者!反对盗版! 中国大悟论坛 版权所有 - yyn(hsd6i用户工作界面是通过ie浏览器来实现的。客户机上只要安装一个浏览器(browser),如internet explorer,服务器安装等数据库如sql server。浏览器通过web server 同数据库进行数据交互。 b/s模式最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用。客户端零维护,不管有多少客户端、在本地还是异地,不管是运行维护还是升级,只要对服务器进行操作就行,可以大大节省人力、物力、时间、费用。系统的扩展非常容易,只要能上网,分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过确认后,系统可以自动分配给用户一个账号进入系统。由于b/s架构管理软件只安装在服务器端(server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(server)端完全通过浏览器实现,极少部分事务逻辑在客户端(browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。所以应用服务器运行数据负荷较重,最好在备用数据库存储服务器,以防发生服务器“崩溃”等问题造成不必要的损失。browser/server(b/s)结构是一种以web技术为基础的新型的mis系统平台模式。他把传统的 c/s结构中的服务器部分分解为一个数据服务器与一个或多个应用服务器(web服务器),从而构成一个三层结构的客户服务器体系。采用这种胖服务器端,瘦客户端的运行模式,主要的数据计算操作都在服务器端进行,应用程序也在服务器端安装,客户端不用安装应用程序,所有操作均通过浏览器来完成。与传统的c/s结构相比,它具备以下的优点: (1)简化了客户端,客户端软件仅需安装浏览器,客户端硬件配置要求较低。 (2)使用户的操作变得更简单,用户只需了解浏览器的使用,就可访问不同的应用,获取所需的信息。 (3)特别适用于网上信息发布与获取,使得传统的mis的功能有所扩展。 鉴于b/s结构的诸多优点与本系统的实际需求,最终决定采用 b/s结构。93.2.3 struts 2框架struts 2是struts的下一代产品。是在struts和webwork的技术基础上进行了合并,全新的struts框架。其全新的struts 2的体系结构与struts 1的体系结构的差别巨大。struts以webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计业使得业务逻辑控制器能够与servlet api完全脱离开,所以struts 2可以理解为webwork的更新产品。因为struts 2和struts 1有着太大的变化,但是相对于webwork,struts 2只有很小的变化。struts 2的体系与struts 1体系的差别非常大,因为struts 2使用了webwork 的设计核心,而不是strust 1的设计核心。struts 2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与servlet api分离。图3-4是struts 2的体系结构简图。图3-4 struts 结构图struts2框架的大概处理流程如下: 1、浏览器发送一个请求。 2、核心控制器filterdispatcher根据请求决定调用合适action。 3、webwork的拦截器链自动对请求应用通用功能,如验证等。4、回调action的execute方法,该execute方法根据请求的参数来执行一定的操作。5、action的execute方法处理结果信息将被输出到浏览器中,支持多种形式的视图。struts2有以下优点: 1)在软件设计上struts2没有像struts1那样跟servlet api和struts api有着紧密的耦合,struts2的应用可以不依赖于servlet api和struts api。 struts2的这种设计属于无侵入式设计,而struts1却属于侵入式设计。 2)struts2提供了拦截器,利用拦截器可以进行aop编程,实现如权限拦截等功能。 3)strut2提供了类型转换器,我们可以把特殊的请求参数转换成需要的类型。在struts1中,如果我们要实现同样的功能,就必须向struts1的底层实现beanutil注册类型转换器才行。 4)struts2提供支持多种表现层技术,如:jsp、freemarker、velocity等 5) struts2的输入校验可以对指定方法进行校验,解决了struts1长久之痛。 6) 提供了全局范围、包范围和action范围的国际化资源文件管理实现103.2.4 spring 框架spring是一种多层的j2ee应用程序框架,其核心就是提供一种新的机制管理业务对象及其依赖关系。例如ioc(控制反转),aop(面向切面编程)。3.2.5 javascript技术javascript是一种由netscape的livescape发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是netscape的浏览器navigator加入了javascript,提供了数据验证的基本功能11。 javascript的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。javascript 使网页增加互动性。javascript 使有规律地重复的html文段简化,减少下载时间。javascript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由 cgi 验证。javascript 的特点是无穷无尽的,只要你有创意11 。4数据库技术数据库设计是指在现有数据库管理系统上建立数据库的过程,它是管理信息系统的重要组成部分,并且是衡量信息系统开发工作好坏的主要指标之一。本数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库设计的内容是:对于一个确定的环境,进行符合应用语义的逻辑设计,以及提供一个确定存贮结构和物理设计,建立实现系统目标,并能有效存取数据和数据模型。其主要任务是设计出能够反映实际信息关系、数据冗余少、存储效率高、易于实施和维护,并能满足各种应用要求的数据模型12。4.1 数据库概念结构设计将需求分析得到的用户需求抽象为信息结构及概念模型的过程是概念结构设计。为了描述数据库结构的概念模式,这里采用e-r图来描述数据库的实体关系。 从需求可得出此系统如下主要实体:部门实体、职务实体、用户实体、角色实体、菜单实体、用户角色实体、公告实体、小贴士实体。本系统在设计过程中考虑到降低各模块之间的耦合度,以提供一个相对独立的模块化操作平台,所以在各数据表之间没有直接的联系。下面给出各实体e-r图。部门实体e-r图如下:图4-1 部门实体职务实体e-r图如下:图4-2 职务实体用户实体e-r图如下:图4-3 用户实体角色实体e-r图如下:图4-4 角色实体菜单实体e-r图如下:图4-5 菜单实体邮件实体e-r图如下:图4-6 邮件实体小贴士实体e-r图如下:图4-7 小贴士实体公告实体e-r图如下:图 4-8 公告实体4.2 数据库逻辑结构设计4.2.1 主要信息表的简介基本表是本身独立存在的表,在sql中一个关系就对应一个基本表。一个或多个基本表对应一个存储文件。用户建立一个基本表后,可以对它进行增加、修改、查询、删除等操作。本设计中涉及到以下基本表,建立于数据库webexam中。具体如下所示:表4-1 省份表(t_province)列名数据类型长度是否主键允许空说明idnumber8是不允许省份编号namevarchar212否不允许省份名称pidnumber50否不允许父类编号表4-2 部门表(t_dept)列名数据类型长度是否主键允许空说明idnumber8是不允许部门编号namevarchar212否不允许部门名称pidnumber50否不允许父类编号isdelchar1否不允许是否删除表4-3 职务表(t_job)列名数据类型长度是否主键允许空说明idnumber8是不允许职务编号namevarchar212否不允许职务名称pidnumber50否不允许父类编号表4-4 用户表(t_user)列名数据类型长度是否主键允许空说明usernamevarchar230是不允许用户名passwordvarchar230否不允许密码namevarcahr230否不允许名称deptidnumber11否不允许部门编号jobidnumber11否不允许职务编号sexvarchar21否不允许性别hometownvarchar220否不允许籍贯cardi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论