版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE40 摘要随着教育与科技的不断发展,办公自动化系统在技术和应用上都得到了更高层次的发展,成为现代社会的重要标志。校园办公自动化系统作为校园信息化建设的重点之重,不仅能改善校园办公条件与环境,减轻工作人员负担,提高办公质量和工作效率,而且能加快校园管理工作规范化、科学化、网络化的进程,对推动我国高等教育信息化事业的发展有着积极的意义。针对浙江工业大学浙西分校办公业务的要求,运用Internet和ASP开发技术,采用Browser/Server(浏览器用及服务器)模式,建立一个基于Web的浙江工业大学浙西分校办公自动化系统。本系统实现了用户登陆,工作计划,通告管理,人力资源管理,通讯助理,电子邮件,会议管理,档案资料管理等功能。其中工作计划模块用于建立一个工作计划,每个用户可以对自己的计划进行添加,删除和查询,还可以对计划的重要程度,完成与否进行设置。通讯助理模块主要是建立一个个人通讯录,用户可以对自己通讯录中的联系人资料进行添加,删除和查询,还可以对不同的联系人进行分组,方便查看。关键词:B/S结构;ASP;Intranet;Web;办公自动化系统AbstractAlongwiththeeducationandthetechnicalunceasingdevelopment,theofficeautomationsystemallobtainedthehigherleveldevelopmentinthetechnologyandtheapplication,becomesthemodernsocietytheimportantsymbol.Thecampusofficeautomationsystemtookthecampusinformationconstructionthekeypointisheavy,notonlycanimprovethecampusworkconditionandtheenvironment,reducesthestafftobear,improvestheworkqualityandtheworkingefficiency,moreovercanspeedupthecampussupervisoryworkstandardization,scientific,thenetworkadvancement,toimpelsourcountryhighereducationinformationenterprisethedevelopmenttohavethepositivesignificanceInviewoftheZhejiangindustrialuniversitywesternZhejiangbranchschoolworkservicerequest,utilizesInternetandtheASPdevelopmenttechnology,usesBrowser/Server(browserwithandserver)thepattern,establishesbasedontheWebZhejiangindustrialuniversitywesternZhejiangbranchschoolofficeautomationsystem.Thissystemrealizedtheusertoland,theworkplan,thecircularmanagement,thehumanresourcesmanagement,thecommunicationassistant,theemail,theconferencemanaged,functionandsoonreferencematerialmanagement.Workplanmoduleusesintoestablishaworkplan,eachusermaycarryontheincreasetoownplan,thedeletionandtheinquiry,butalsomaytotheplanimportantdegree,completeornotcarriesontheestablishment.Thecommunicationassistantmodulemainlyisestablishesaeachonepersonofaddressbook,theusermaycarryontheincreasetointheoneselfaddressbookcontactpersonmaterial,thedeletionandtheinquiry,butalsomaycarryonthegroupingtothedifferentcontactperson,facilitatesexaminesKeywords:B/Sstructure;ASP;Intranet;Web;Officeautomationsystem目录摘要………………..IIIAbstract..…………………………...IV第1章绪论………………………11.1引言………………………11.2办公自动化系统产生的背景 ………11.3办公自动化系统的发展过程 ……………11.3.1办公自动化系统在国外的发展 21.3.2办公自动化系统在国内的发展 21.4办公自动化系统的现状和研究意义 …………………31.4.1现状 31.4.2研究意义 31.5C/S体系结构与B/S体系结构的比较 ……………41.5.1客户机/服务器模式(C/S) 41.5.2浏览器/服务器模式 51.5.3客户机/服务器和浏览器/服务器结构的比较 51.6论文结构 …………………6第2章系统分析…………………82.1需求分析 …………………82.2系统的设计目标 ………………………82.3系统框架图….……………82.4E-R图 …………………92.5数据词典………………...102.6本章小结 ………………..11第3章ASP技术………………..123.1ASP的工作原理 ……………………..123.2ASP的内置对象和组件 ………………..123.2.1ASP的内置对象 123.2.2ASP的组件 173.3 ASP访问数据库步骤 ………………..183.3.1定义数据源 183.3.2使用ADO组件查询WEB数据库 183.4本章小结………………..19第4章通讯助理和工作计划模块的设计和实现 …………..204.1数据库的连接和释放 ………………..204.2通讯助理模块的实现 ………………..214.2.1个人通讯录模块设计 214.2.2增加个人通讯录 224.2.3通讯录类别管理页面设计 234.2.4查询个人资料设计 244.2.5查询结果页面显示 254.2.6个人通讯录主页面设计 274.3工作计划模块实现 ……………………..284.3.1工作计划模块设计 284.3.2增加工作计划 294.3.3查询设计 304.3.4编辑工作计划 314.3.6显示本月工作计划 334.4本章小结 …………..34第5章总结与展望 …………..355.1系统开发过程总结 ………………..355.2系统展望………………..35参考文献…………………………..36致谢…..…………………………..37第1章绪论1.1引言随着计算机技术的飞速发展,计算机在各行各业中应用的普及,利用计算机实现学校办公自动化系统管理势在必行。办公自动化系统是20世纪80年代初期随着微型计算机技术和计算机局域网络技术的发展而兴起的一门信息处理系统分支。目前,办公自动化的概念和意识已广泛地被各类办公人员所接受,办公自动化系统已深入到现代社会的各个角落。它的出现正改变着传统的事务性办公业务,改变着人们的观念。随着技术的进步,办公自动化系统的功能和内涵也在不断地发展和完善,为未来信息化的社会提供一个高效迅速甚至智能化的办公环境。1.2办公自动化系统产生的背景办公自动化系统的产生主要有两方面的原因,一是办公模式的变革;二是计算机技术的发展。1办公模式的变革办公是处理人群集体事务的活动。传统办公业务信息量不大,内容简单,手工方式便可以完成。70年代中期,西方发达国家生产力水平急剧上升,办公业务急剧增加,传统的手工方式已不能满足信息和业务增长的需要,时代的发展对办公方式提出了新的要求。为了适应发展需要,就必须改进信息采集、管理和传递的方式和手段,这是办公自动化系统产生的原动力。2计算机技术的发展最初的主机模式由功能强大的主机负责各项任务,终端基本上作为人机界面而存在,它并无执行程序等更多功能。80年代初微电子工业在技术和价格方面的迅速发展,尤其是微型计算机、网络通信技术和其它各类以微电脑为基础的办公自动化设备的出现,为办公自动化系统的广泛应用和发展提供良好的物质基础。1.3办公自动化系统的发展过程办公自动化系统是在人类社会活动由迫切需要,在技术和工业基础上具有相关的条件下产生出来的。它的发展伴随着技术的进步而不断丰富和完善。其发展过程大体可分为三个阶段:第一阶段:70年代末期。主要以小型计算机设备和自动程控交换机为中心,外加字处理机、复印机、计算机终端设备等构成早期的办公自动化系统。它以结构化数据为存储和处理对象,强调对数据的计算和统计能力,实现了个体工作的自动化。第二阶段:80年代。采用综合设备,如微型计算机、小型计算机、工作站、综合数据通信等,以实现办公综合管理自动化。这一阶段办公自动化系统以网络为中心,以非结构化数据的信息流为主要存储和处理对象。第三阶段:90年代以后。办公自动化系统的发展有以下特点:一是多媒体技术的发展,使它朝着综合处理文本信息、语音和图像信息的方向发展;二是通信技术的发展,使办公自动化突破了单位和地域的限制,朝着全球信息资源共享的方向发展;三是应用更深入,逐渐朝着数据处理、决策支持领域渗透,向更加大型化、综合化、智能化方向发展。1.3.1办公自动化系统在国外的发展国外办公自动化系统的发展首推美国和日本,其次为欧洲,以美国为例,美国大约在本世纪七十年代出现办公自动化,1977年到1978年间出现了许多成功的办公自动化的事例(如卡特政府筹建的白宫办公业务信息系统)。美国办公自动化系统的发展大约分为以下几个时期:1初期(1975年前)。主要采用各种机械、电子设备,如文字处理机、复印机、传真机等来完成单项业务的自动化;2发展期(1975-1982)。采用单机系统以及部分机械电子设备综合办公;3改进期和成熟期(1983年以后)。将部门内的计算机和各种设备组成局域网,通过资源共享方式综合办公。综合采用各种新技术,设备向网络化、高速化、智能化方向发展。1.3.2办公自动化系统在国内的发展我国的办公自动化系统建设起步较晚,70年代从国外传入,可以分为以下几个时期:1启蒙与准备期(1981-1985年)主要引进技术、解决汉字的输入、输出、合作生产各种设备以及有关系统和软件的汉化工作等,在小范围内实现应用;2开创与见效期(1986-1990年)开始有计划地在全国范围内开展办公自动化试点,在设备生产上形成布局,对全国通信网络进行大规模改造,技术上日益成熟,标准化逐步形成;3发展与成熟期(90年代后)全国分组交换网己经投入使用,技术获得进一步发展,各级政府部门、企事业单位开始组建内部局域网,开始向大型化、网络化、高速化发展。随着社会信息化步伐的加快和高教改革的逐步深入,许多高校已经认识到OAS建设的重要性和必要性。高校办公自动化系统建设已不同程度地被各高校提到日程安排上,并且己有一些高校走在了前列,如清华大学、上海交大、浙江大学、大连海事大学等高校的办公自动化系统都已投入运行,方便了各部门的交流协作,取得了良好的效果。但是,无论是应用软件公司已开发的OAS,还是移植其它高校的OAS,一般都无法完全适合本校的办公需求,都需要经过二次开发,并目‘存在费用高、周期长’的问题。因此研究、设计我们学校自己的办公自动化系统具有较大的理论和实际意义。1.4办公自动化系统的现状和研究意义1.4.1现状办公自动化是当前国际上飞速发展的新型学科,美日等发达国家对它的应用和研究都非常重视。除了对办公自动化系统软硬件及系统集成的研究开发外,还进行了有关办公管理科学方面的研究。我国对办公自动化系统的应用和研究包很重视,国务院电子振兴小组于1983年设立了办公自动化专业领导小组,1986年又成立了办公自动化专业的专家组,多次进行研究和探讨。现在,己有不少办公自动化系统产品投入使用,促进了人们的交流与合作,提高了工作效率。1994年4月,有国家计委立项国家教委主持,全国十所大学承担的国家重点工业性试验项目“中国教育科研网络((CERNET)示范工程”开始启动,1995年12月通过鉴定验收。该示范工程建设的成功,对促进我国教育、科研事业的发展和人才的培养将起到重要作用,是我国高校信息系统(包括办公自动化系统)建设的重要里程碑。但与发达国家相比,还存在较大差距,具体表现在几方面:1组织管理的滞后性。高校办公自动化系统的建设起步较晚,人才和知识方面存在较大差异,发展不平衡,教育体制的改革和管理的发展总体落后于社会信息化进程。2重视程度不够。随着信息化社会的到来,高教领域竞争机制的引入,使办公室的工作量越来越大,要求也越来越高,使各级管理人员和办公人员对办公自动化系统的依赖日益增强。而高校的中间管理层在办公自动化系统的建设中,缺乏足够的认识和有力的支持,主动支持、积极参与的不多,影响了系统的建设、生存和发展。3系统效益不明显。我国高校办公自动化系统的发展不同于国外及企业。还处于初级发展阶段,大部分属于信息管理型,缺乏对大量事务的处理及辅助决策的支持。加上用户使用水平有限,办公效率没有得到明显提高。1.4.2研究意义传统的办公方式已不能解决信息管理过程中的沟通(Communication)、协调(Cooperation&Coordination)和控制(Control)等方面的问题。因此必须建立现代办公自动化系统来完成信息的收集、整理、传递和分析,实现信息大范围、有控制、高效率而低成本的共享和利用,并及时主动地获取决策所需的信息以辅助决策,实现管理现代化和决策科学化。对于高校而言,校际之间的竞争就意味着内部管理体制和工作效率之间的竞争。随着学校规模的扩大,如果人员之间、各部门之间的信息传递仍然停留在原来的有纸化传送的基础上,这种联系方式就势必导致低效落后,影响各部门间的信息流通效率,因此有必要建立安全、高效的办公自动化系统。通过对办公自动化系统的研究,把握其发展方向和趋势,构建高效的办公环境。随着信息技术的不断发展和理论研究的不断深入,各种新的办公自动化系统设计方案的出现必将对办公自动化的实施与推广起巨大的推动作用,办公自动化系统必将获得更广泛的应用前景。1.5C/S体系结构与B/S体系结构的比较目前开发学籍管理信息系统常采用的体系结果有C/S和B/S两种,下面对这两种体系结果作具体的比较分析。1.5.1客户机/服务器模式(C/S)客户机/服务器结构,即Client/Server结构。这种结构把数据库信息存放在远程的服务器上,而客户机上安装相应的软件。传统C/S结构一般是两层的,其结构如图2.1所示。它有两部分构成:前端是客户机,即用户界面,接受用户的请求,并向数据库服务器提出请求,通常是一个PC机;后端是服务器,将数据提交给客户端,客户端将数据进行计算并把结构呈现给用户。C/S结构还提供了完善的安全保护及对数据完整性处理等操作,并允许多个客户同时访问一个数据库。在这种结构中,服务器的硬件必须要有足够的处理能力,这样才能满足客户的需求。随着Internet技术的普及和电子商务技术的发展,客户机/服务器结构的数据库系统正在由2层向3层发展。应用程序的任务在逻辑上被划分为三种服务:用户服务、业务服务(中间层服务)和数据服务。用户服务在客户机上,提供了可视化的用户界面来表示信息和收集数据;业务服务在一个或多个业务服务器上,是联系用户服务和数据服务的桥梁,它们响应用户发来的请求,实施业务规则,处理和分析业务数据。获得业务结果;数据服务在数据库服务器上,负责数据的组织管理,包括数据的定义、维护、访问和更新以及管理并响应业务服务器的数据请求。C/S结构在技术上已经很成熟,它的主要特点是交互性强、具有安全存取模式、网络通信量低、响应速度快、利于处理大量数据。但是该结构的程序是针对性开发的,变更不灵活,维护和管理的难度较大。通常只局限于小型局域网,不利于扩展。并且,由于该结构的每台客户机都需要安装相应的客户端程序,分布功能弱且兼容性差,不能实现快速部署安装和配置,因此缺少交通性,具有较大的局限性。要求具有一定专业水准的技术人员去完成。图浏览器/服务器模式浏览器/服务器结构,即Browser/Server结构,就是只安装维护一个服务器,而客户端采用浏览器运行软件。它是随着Internet技术的兴起,对C/S结构的一种变化和改进。主要利用了不断成熟的WWW浏览器技术,结合多种Script语言(如VBScript、JavaScript等)和ActiveX技术,是一种全新的软件系统构造技术。B/S三层体系结构采用三层客户/服务器结构,在数据管理层和用户界面层之间增加了一层结构,称为中间件,使整个体系结构成为三层。三层结构是伴随着中间件技术的成熟兴起的,核心概念是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次,如图1.2所示。三个层次的划分是从逻辑上分的,具体的物理分法可以有多种组合。中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器、服务器与服务器的连接和通信;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。这种三层结构在层与层之间是互相独立的,任何一层的改变不会影响其他层的功能。图1.2B/S三层体系结构1.5.3客户机/服务器和浏览器/服务器结构的比较1硬件环境不同C/S建立在局域网的基础上,通过专门服务器提供连接和数据交换服务。所处理的用户不仅固定,并且处于相同区域,要求拥有相同的操作系统。B/S建立在广域网的基础上,信息自己管理,有比C/S更强的适用范围,一般只要有操作系统和浏览器就行。与操作系统平台关系最小。面向不可知的用户群。2结构不同C/S软件一般采用两层结构,而B/S采用三层结构。这两种结构的不同点是两层结构中客户端参与运算,而三层结构中客户端不参与运算,只是简单的接收用户的请求,显示最后的结果。所以在三层结构中对客户端的计算机的配置要求很低。虽然B/S在逻辑上采用了三层结构,但在物理上的网络结构仍然是原来的以太网或环形网。这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路,网络通信量大。而C/S只有两层结构,网络通信量只包括客户端与服务器之间的通信量,网络通信量低。所以,C/S处理大量信息的能力是B/S无法比拟的。3处理模式不同B/S的处理模式与C/S相比,大大简化了客户端,只要装上操作系统、网络协议软件以及浏览器即可,这时的客户机成为瘦客户机,而服务器则集中了所有的应用逻辑。4构件重用不同在构件的重用性方面,C/S程序从整体进行考虑,具有较低的重用性。而B/S对应的是多重结构,要求构件具有相对独立的功能,具有较好的重用性。5系统维护不同系统维护是在软件生存周期中开销最大的一部分。C/S程序由于其本身的整体性,必须整体考察并处理出现的问题。而B/S结构,客户端不必安装及维护。B/S结构在构件组成方面只变更个别构件,开发、维护等工作都集中在服务器端。当需要升级时,只需更新服务器端的软件,而不必更换客户端软件,实现系统的无缝升级。这样就减轻了系统维护与升级的成本和工作量,使用户的总体拥有成本大大降低。6对安全的要求不同C/S一般面向相对固定的用户群,程序更加注重流程,它可以对权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜。而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。所以B/S对安全以及访问速度比C/S有更高的要求。而Internet技术中这些关键的安全问题远未解决。7速度不同由于C/S在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快。使得C/S更利于处理大量数据。8交互性与信息流不同交互性强是C/S固有的一个优点。在C/S中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。B/S虽然由JavaScript、VBScript提供了一定的交互能力,但与C/S的一整套客户应用相比实在是太有限了。C/S的信息流单一,而B/S可处理如B-B、B-CB-G等信息并具有流向的变化。综上所述,C/S和B/S这两种技术是各有利弊。但相比较只下,C/S主要局限与局域网,缺乏作为应用平台的一些特性,而且要求开发者自己处理事物管理、消息队列、数据的复制和同步等问题,对开发者有较高的要求,而且应用程序的维护和移植复杂。而B/S应用于广域网上,应用程序开发比较简单,而且大大降低了维护管理的难度,所以,B/S具有更广大的发展前景。1.6论文结构本文包括了以下一些内容:第1章介绍了办公自动化系统产生的背景,发展过程,现状和研究意义以及C/S体系结构与B/S体系结构的比较等;第2章介绍了办公自动化系统的需求分析、系统的设计目标,系统框架图、E-R图及数据词典等;第3章详细讨论了ASP的工作原理、ASP的内置对象、组件,并比较详细的介绍了ASP访问数据库的步骤;第4章给出了办公自动化系统的数据库的连接和修改,详细介绍了工作计划和个人通讯录模块的实现;第5章给主要对办公自动化系统的总结和该系统的发展前景。第2章系统分析办公自动化是办公与管理自动化的简称,它的发展历史不长,各国的实践不同,对它的理解和认识也不同,随着技术的发展和人们认识过程的深化,办公自动化自身也在不断地丰富和完善。2.1需求分析办公自动化系统的建立,需要进行用户需求调查与分析,以确定系统目标,这是系统建设的重要环节。学校需要规模相对较小,但其在功能上对系统的需求却是全面的。大体可分为:一方面是通过收发电子邮件为主的方式,与其它员工交流各种信息,基于工作流的方式实现诸如员工是基本资料查询、个人通讯录;员工管理个人日程安排,各种档案资料的查阅等日常办公功能。另一方面则是面向公司办公业务方面的业务管理功能。即完全采用计算机技术处理办公业务,使企业内部人员能够方便快捷地共享信息、交流信息,高效地协同工作,既兼顾个人办公效率的提高,又可以实现群体协同工作。2.2系统的设计目标对广大用户来讲,系统界面友好,操作简单,易学易用是非常重要的。浙江工业大学浙西分校的办公自动化系统从设计上要达到如下目标:1建立一个功能丰富、操作简单的OAS,充分利用Intranet技术,使系统的全部功能都可以在WWW浏览器内进行操作。2满足校领导高效率处理日常事物的工作需要,有效地协助学校领导顺利地完成各项工作。3采用合理的工作台流程方式处理影响工作效率的各个环节,最大限度地避免人工传送实物的工作。4为部门间实现真正的协同工作提供保证,摆脱多个部门协作时经常出现的互相等待的状况。总的来说是为校区提供一套校园办公的解决方案,构建现代化的信息平台。在此平台上通过协作,提高资源利用率和工作效率,规范各部门的办公行为,实现资源共享。2.3系统框架图本系统各个功能都采用模块化结构设计,系统总体框架结构如图2.1登入登入工作计划校园办公自动化系统用户帐号设置设置会议管理档案资料档案资料通告管理人力资源通讯助理电子邮件个人办公图2.1系统框架图2.4E-R图NNN查询个人通讯录姓名单位职务电话或分机登录用户Email图2.2个人通讯录E-R图工作计划工作计划计划执行人重要度完成度时间登录用户NN查询图2.3工作计划E-R图2.5数据词典为了要实现以上的功能,首先要定义数据字典。因此,在数据库中建立如下六张数据表:管理员信息表(N_admins),用户信息表(N_userinf)、增加工作计划表(N_workrep)、增加通讯录表(N_personrecord),学校办公自动化系统这里所使用的是Access数据库,数据库中的各个表的设计结果如下表。每个表格表示在数据库中的一个表。下表为管理员信息表,存储系统中管理员信息表4-1管理员信息表(N_admins)列名数据类型字段大小默认值说明Admin_id自动编号长整型无管理员帐号(主键)Admin_name文本50无管理员姓名Admin_password文本50无管理员密码Admin_field文本50无管理权限下表为工作计划表,存储上传的工作计划资源 表4-2用户信息表(N_userinf)列名数据类型字段大小默认值说明ID自动编号长整型无资源编号name文本10无用户姓名username文本10无用户名password文本20无密码allow_write_complan文本50无可以输入公司计划joindate日期/时间无Now()建立时间下表为增加工作计划表,存储类别信息表4-3增加工作计划表(N_workrep)列名数据类型字段大小默认值说明ID自动编号长整型无日志title文本50无类别名recdate文本50无日志记录日期username文本50无本人用户名superior文本50无安排工作的上级用户名remark备注无无imp文本50无是否重要finished文本50无是否完成下表为增加通讯录表,存储增加的通讯录资源表4-4增加通讯录表(N_personrecord)列名数据类型字段大小默认值说明ID自动编号长整型无通讯录编号thisinfousername文本50无名称recordtype数字长整型无xm文本50无姓名fax文本15无性别email文本50无邮箱下表为通讯录类别管理表,存储通讯录类别表4-6通讯录类别管理表(N-persontype)列名数据类型字段大小默认值说明id自动编号长整型无分类编号username文本50无分类名称typename文本50无分类内容2.6本章小结本章开头阐述了办公自动化系统的需求分析,设计目标,接着介绍系统的数据词典、框架图以及C/S体系结构与B/S体系结构的比较。第3章ASP技术ASP是微软公司推出的新兴的网络应用程序开发技术,是服务器端的脚本编写环境,使用ASP可以创建和运行动态、交互的应用程序,可以组合HTML页面、脚本命令和ActiveX组件以创建交互的网络和基于网络的功能强大的应用程序。目前ASP已成为开发动态网站和网络数据库的主要技术之一。3.1ASP的工作原理当用户申请一个大asp主页时,Web服务器响应该HTTP请求,调用ASP引擎,解释被申请文件。当遇到任何与ActiveXScripting兼容的脚本如VBScript和JScript)时,ASP引擎会调用相应的脚本引擎进行处理。若脚本指令中含有访问数据库的请求,就通过ODBC与后台数据库相连,由数据库访问组件执行访库操作。ASP脚本是在服务器端解释执行的,它依据访问数据库的结果集自动生成符合HTML语言的主页,去响应用户的请求。所有相关的发布工作由Web服务器负责。3.2ASP的内置对象和组件ASP提供了功能强大的六个内置对象和五个内置组件,利用这些对象和组件可以开发出非常完美的网络应用程序。下面分别对ASP的内置对象和组件作介绍。3.2.1ASP的内置对象ASP提供的内置对象,这些对象可以使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用户信息(如用户首选项)。这六个内置对象如下:1Request(请求):可以使用Request对象访问任何用HTTP请求传递的信息,包括从HTML表格用POST方法或GET方法传递的参数、cookie和用户认证。通过Request对象能访问发送给服务器的二进制数据,如上传的文件。2Response(响应):将信息送给前端。Response对象可同来构建对信息的反馈。3Server(服务器):提供网络服务器工具。4Application(应用):管理所有会话,供所有用户共享。5Session(会话):存储一次会话内的用户信息,仅被该用户访问。6ObjectContext(对象上下问):提交或终止由ASP脚本启动的事物。下面就ASP的六个内置对象进行说明:Request使用Request对象,可以收集并处理用户通过HTTP请求传送的信息,如HTML表单用POST或GET方式传达的参数,Cookies数据和环境变量等。这些信息可以分别从Request对象的集合中获取。1Request对象的语法Request[.collection|property|method](“variable”)或Request(“variable”)如果通过调用Request(“variable”)直接使用所有的变量,而不用集合的名称,那么,Web服务器会按照下面的顺序搜索集合:QueryStringFormCookiesClientCerificateServerVariables这样,当发现第一个匹配的变量时,就认定它就是要引用的成员。显然省略集合名称会影响执行效率。为了提高效率,最好明确的指定是哪个集合中的成员。2Request对象的集合Request对象有五种集合,如表3.1所示表3.1Request对象的集合集合名说明ClientCerificate存储在发送到HTTP请求中客户端证书中的字段值CookiesHTTP请求中被发送的cookie的值FormHTTP请求正文中表格元素的值QueryStringHTTP中查询字符串变量的值ServerVariables预定的环境变量的值3Request对象的属性TotalBytes:指定客户端在请求正文中发送的总字节数,该属性只允许读。语法:Counter=Request.TotalBytesCounter用于指定一个变量来接受客户端在请求中发送的总字节数。4Request对象的方法BinaryRead:用于获取作为POST请求的一部分而从客户端传送到服务器的数据。语法:variant=Rqquest.BinaryRead(count)variant包含由该方法返回的无符号数的数组。Response使用Response对象,可以控制发送给用户的信息。包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。1.Response对象的语法Response.collection|property|method2.Response对象的属性Response具有多种属性,如表3.2所示。表3.2Response对象的属性属性名说明Buffer表明页输出是否缓冲CacheCobtrol决定代理服务器是否能缓存ASP生成的输出Charest将字符集的名称添加到内容类型标题中ContentType指定响应的HTTP内容类型ExpiresAbsolute指定浏览器上缓存页面超时的日期和时间IsClientConnected表明客户端是否与服务器断开Pics将PICS标记的值添加到响应标题的PICS标记字端中Status服务器返回的状态行的值3Response对象的方法Response对象也具有多种方法,如表3.3所示表3.3Response对象的方法方法说明AddHeader从名称到值折纸HTML标题AppendToLog在该请求的Web服务器日志条目后添加字符串BinaryWrite将给出信息写如到当前HTTP输出中,并不进行任何字符转换Clear清除任何缓冲的HTML输出End停止处理.asp文件并返回当前的结果Flush立即发送缓冲的输出Redirect将重指示的信息发送到浏览器,尝试连接另一个URLWrite将变量作为字符串写入当前的HTTP输出4Response对象的Cookie集合Cookies集合设置cookie的值。若指定的cookie不存在,则创建它。若存在,则设置新的值并且将旧的值删除。语法:Response.Cookies(cookie)[(key)|.attribute]=valueCookie即指cookie的名称。key是可选项,如果指定了key,则Cookie就是一个字典,而key将被设置为value。attribute是指定cookie自身的有关信息。value指定分配给key或attribute的值。ServerServer对象提供对服务器上的方法属性进行的访问。最常用的方法是创建ActiveX组件的实例(Server.CreatObject)。其他方法用语将URL或HTML编码成字符串,将虚拟路径映射到物理路径以及设置脚本的超时的时期。1.Server对象的语法Sperty|method2Server对象的属性ScriptTimeout:用于指定脚本在结束前最大可运行的时间。当处理服务器组件时,超时限制将不在生效。语法:Server.ScriptTimeout=NumSecondsNumseconds是指定脚本在被服务器结束前最大可运行的秒数。默认的值是90秒。3Server对象的方法Server对象的方法如表3.4所示表3.4Server对象的方法方法说明CreatObject创建服务器组件实例HTMLEncode将HTML编码应用到指定的字符上MapPath将指定的虚拟路径映射为物理路径URLEncode将URL编码规则,包括转义字符,应用到字符串①MapPath方法语法:Server.MapPath(Path)Path是指定要映射的物理目录的相对路径或虚拟路径。若Path以一个正斜杠(/)或反斜杠(\)开始,则MapPath方法返回路径时将Path视为完整的虚拟路径。若Path不是以斜杠开始,则MapPath方法返回与.asp文件中已有的路径相对的路径。MapPath方法不检查返回的路径是否正确或在服务器上是否存在。所以,可以先用MapPath方法映射物理目录结构的路径,然后将其传递给在服务器上创建指定迷路或文件的组件。②CreatObject方法语法:Server.CreatObject(progID)progID是指定要创建的对象的类型。Server.CreatObject是Server对象中最重要的方法,用于创建已注册到服务器上的ActiveX组件的实例。ActiveX组件能够轻松的扩展ActiveX的能力,实现许多重要的功能。服务器组件和ASP内置对象一样有集合、属性和方法,但不同的是无法直接存取,必须先建立一个对象实例,然后在通过此对象实例去存取其集合、属性和方法。因此,要想使用数据访问组件,必须先建立对象实例,如:Setrs=Server.CreatObject(“ADOBO.Connection”)Set是VBScript的关键词,rs是这个对象实例的名称,ADOBO是ASP服务器的一个组件,用于处理数据库。默认情况下,由Server.CreatObject方法创建的对象具有页作用域,即当ASP页处理完后,服务器将自动破坏这些对象,也可以通过noting来释放创建的组件所占的资源。如:<%Setrs=nothing%>Application可以使用Application对象在给定的应用程序的所有的用户之间共享信息。基于ASP的应用程序同所有的.asp文件一样在一个虚拟目录及其子目录中定义。因为多个用户可以共享Application对象,所以必须要加锁以确保多个用户无法同时改变某一属性。1Application对象的语法Application.method2Application对象的集合Application对象的集合有如下两种:Contents:即包含所有通过脚本命令添加到应用程序中的项。StaticObjects:即包含所有用<OBJECT>标记添加到到会话中的对象。3Application对象的方法Application对象的方法也有两种:Lock:此方法禁止其他用户修改Application对象的属性。Unlock:此方法允许其他用户修改Application对象的属性。Session可以使用Session对象存储特定的用户会话所需要的信息。当用户在应用程序的页面之间跳转时,存储在Session对象中的变量不会清除。而用户在应用程序中访问页面时,这些变量始终存在。也可以使用Session方式显式的结束一个会话和设置空闲会话的超时期限。1Session对象的语法Session.collection|property|method2Session对象的集合Session对象有两个集合类型:Contents:包含已用脚本命令添加到会话中的项目。StaticObjects:包含通过<OBJECT>标记创建的并给定了会话作用域的对象。3Session对象的属性Session对象具有多个属性,如表3.5所示。表3.5Session对象的属性属性说明CodePage将用于符号映射的代码页LCID现场标识SessionID返回用户的会话验证Timeout应用程序会话状态的超时时限,以分钟为单位4Session对象的方法Session对象有一个Abandon方法,用于删除所有存储在Session对象中的对象,并释放这些对象的源。如果未明确的调用Abandon方法,一旦会话超时,服务器将删除这些对象。语法:Session.AbandonAbandon方法在被调用时,将按顺序删除当前的Session对象,不过在当前页中所有脚本命令多处理完后,对象才会被真正删除。这就是说,在调用Abandon时,可以在当前页上访问存储在Session对象中的变量,但在随后的Web页上就不可以了。ObjectContext可以使用ObjectContext对象提交或放弃一项由MicrosoftTransactionServer(MTS)管理的事务,它由ASP页包含的脚本初始化。ASP包含@TRANSACTION指令时,该页会在事务中运行,直到事务成功或失败后才会终止。1ObjectContext对象的语法ObjectContext.method2ObjectContext对象的方法①SetComplete:此方法声明脚本不了解事务未完成的原因。如果事务中的所有组件都调用SetComplete,事务将完成。SetComplete方法忽略脚本中千毫秒年调用过的任何SetAbort方法。语法:ObjectContext.SetComplete②SetAbort:此方法声明脚本初始化的事务未完成,无法更新源。SetAbor方法取消被ASP初始化的事务。语法:ObjectContext.SetAbort3.2.2ASP的组件由于ASP内置对象不能完全涵盖服务器端的所有资源,一些偏向于数据存取的机制,如取得浏览器信息、连接数据库等都必须依靠服务器端现有的控件。当我们在Web服务器安装ASP的环境后,就可以直接使用它自带的组件。ActiveX服务器组件是一个存在于Web服务器上的文件,该文件包含执行某项后一组任务的代码,组件可以执行公用任务,这样就不必用户自己去创建执行这些任务的代码了。ASP包含了五个内置的ActiveX服务器组件,这五个内置组件在制作网页的过程中非常有用。1文件访问组件(FileAccessComponent):提供用ADO对数据库的访问。2广告轮播器组件(AdRotatorComponent):创建一个AdRotator对象,该对象可按指定的计划在同一页上自动变换显示广告。3浏览器信息组件(BrowserCapabilitiesComponent):创建一个浏览器类型的对象,该对象决定访问Web站点的每个浏览器的性能、类型和版本。4内容链接组件(ContentLinkingComponent):创建一个NextLink对象,该对象可生成Web页内容列表,并像书一样将各页顺序连接。5数据库访问组件(DatabaseAccessComponent):提供ADO对数据库的访问。其中DatabaseAccess组件是利用ASP开发Web数据库最重要的组件。使用该组件可以在应用程序中访问数据库,显示整个表的内容,构造用户查询等其他一些数据库操作。DatabaseAccess组件通过ADO访问存储在数据库或其他表格化数据结构中的信息。3.3ASP访问数据库步骤在ASP中,使用ADO组件访问后台数据库,可通过以下步骤进行:3.3.1定义数据源在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“Access”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用JavaScript。3.3.2使用ADO组件查询WEB数据库1调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open方法打开数据库:conn=Server.CreateObject(“ADODB.Connection”)conn.Open(“HT”)2指定要执行的SQL命令连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有“X”的记录sqlStr=“select*fromsignaltabwherecodelike‘%X%’”rs=conn.Execute(sqlStr)3执行的SQL命令Command对象:执行SQL指令,访问数据库。只能读不能写。Open对象:执行SQL指令,访问数据库。既能读又能写。Execute对象:执行SQL指令,访问数据库。只能读不能写。4使用RecordSet属性和方法,并显示结果为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据。rs=Server.CreateObject(“ADODB.RecordSet”)rs.Open(sqlStr,conn,1,A)注:A=1读取A=3新增、修改、删除在RecordSet组件中,常用的属性和方法有:rs.Fields.Count:RecordSet对象的字段数。rs(i).Name:第i个字段的名称,i为0至rs.Fields.Count-1rs(i):第i个字段的数据,i为0至rs.Fields.Count-1rs("字段名"):指定字段的数据。rs.Record.Count:游标中的数据记录总数。rs.EOF:是否最后一条记录。rs.MoveFirst:指向第一条记录。rs.MoveLast:指向最后一条记录。rs.MovePrev:指向上一条记录。rs.MoveNext:指向下一条记录。rs.GetRows:将数据放入数组中。rs.Properties.Count:ADO的ResultSet或Connection的属性个数。rs.Properties(item).Name:ADO的ResultSet或Connection的名称。rs.Properties:ADO的ResultSet或Connection的值。rs.close():关闭连接。5关闭数据库conn.close()3.4本章小结本章一开始对ASP的工作原理作了简单的介绍,接着比较详细的介绍了ASP的内置对象和内置组件,最后阐述了ASP访问数据库步骤。第4章通讯助理和工作计划模块的设计和实现本系统由工作计划,通告管理,人力资源管理,通讯助理,电子邮件,会议管理,档案资料,设置这几个模块组成。系统设计了管理员和普通用户登陆并使用本系统,能录入、修改自己的个人信息,查看自己的工作计划,浏览通告,人力资源,发送邮件,档案资料和会议管理。作者主要制作的是工作计划和通讯助理两个模块,下面对这两个模块的设计和实现作具体的介绍。4.1数据库的连接和释放本系统的所有数据都存放在数据库中,每次要使用数据库中的数据时,就必须先连接数据库,然后才可以对数据库进行添加、修改、删除数据等操作。在使用完数据库后,还要关闭与数据库的连接。由于每次对数据库的操作都要先连接数据库,所以把连接数据库的代码写在一个名为conn.asp的文件中,具体代码如下:<%dimconndimconnstronerrorresumenextconnstr="DBQ="+server.mappath("../db/sdoa.asa")+";DefaultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"setconn=server.createobject("ADODB.CONNECTION")iferrthenerr.clearelseconn.openconnstriferrthenerr.clearendifendif%>这样就创建了一个名为conn的connection对象实例,每次要使用数据库时,就使用<!--#includefile="asp/conn.asp"-->语句调用这段代码,但connection仅仅是建立了对数据库的连接,接下来就要创建一个recordset对象,见如下代码:setrs=server.createobject("adodb.recordset")sql="select*fromuseridwhereusername='"&username&"'"rs.opensql,conn,1,3使用open方法就打开了对数据库的连接,接下来就可以对数据库中的数据进行操作了。当使用完数据库后,就要中断对象与数据库的连接,并把对象从数据库中移除以释放资源。见如下代码:rs.closesetrs=nothingconn.closesetconn=nothing这样就完成了一次对数据库的操作。4.2通讯助理模块的实现这个模块主要是建立一个个人通讯录,每个用户可以对自己通讯录中的联系人资料进行添加,删除和查询。还可以对不同的联系人进行分组,方便查看。4.2.1个人通讯录模块设计这个模块主要有五个页面组成分别是personaddrecord.asp、personfind.asp、personaddtype.asp、personfindresult.asp、personlist.asp。personaddrecord.asp页面是输入个人通讯录资料的,成功增加个人通讯录后直接保存在通讯录中。personaddtype.asp页面可以把通讯录中的资料根据本人是需要分类,进行分别管理。当你的通讯录联系人很多无法一下子找到某人时,可以用personfind.asp页面进行查询。上述资料的调用结果就显示在页面personfindresult.asp。personlist.asp显示个人通讯录的页面。下面画出通讯录各个页面的流程图:personlist.asppersonlist.asppersonaddrecord.asppersonaddtype.asppersonfind.asppersonfindresult.asp分类查找显示输入资料图4.1个人通讯录流程4.2.2增加个人通讯录在personaddrecord.asp页面中输入个人资料保存到通讯录中。通讯录中打*号的姓名和单位是必填的,其他资料可填可不填。例如要在通讯录中增加名为“张三”的资料,在个人通讯录主页personlist.asp中直接点击“增加”按钮,具体页面设计图如图4.1,填写资料,填写完成后点击“输入”按钮,出现“成功输入个人通讯录资料!”字样就说明也成功增加了个人通讯录,可以点击“继续增加”按钮继续增加个人通讯录或“返回”按钮返回个人通讯录主页。图4.2通讯录增加代码如下:<%setconn=opendb("oabusy","conn","accessdsn")setrs=server.createobject("adodb.recordset")//使用server.createobject方法建立recordset对象实例sql="select*frompersontypewhereusername='"&oabusyusername&"'"rs.opensql,conn,1ifrs.eoforrs.bofthenconn.close//先关数据库链接释放recordset对象实例所占用的空间setrs=nothingresponse.write("<scriptlanguage=""javascript"">")response.write("location.href=""personaddtype.asp"";")response.write("</script>")response.endendifdowhilenotrs.eof%><optionvalue="<%=rs("id")%>"><%=rs("typename")%></option><%rs.movenextloopconn.closesetrs=nothing%>4.2.3通讯录类别管理页面设计在Dreamweaver中建立personaddtype.asp页面,该页面要设计的是把通讯录中的资料根据本人的需要进行分类,可以随时更改、添加,不需要的时候还可以删除等功能。例如把“同事”这个类别改成“工作伙伴”,只要把“同事”用“工作伙伴”代替,点击“修改”出现“修改成功!”字样就说明类别名称已经成功修改了,如图4.2。注意这里不能直接点“删除”按钮,因为删除个人通讯录名称时将删除该通讯录中的所有资料。并且可以增加通讯录的类别,只要把要增加的名字输入点击“增加”按钮就可以了。图4.3类别管理修改修改类别代码如下:ifrequest("submit")="修改"anduserlevel<>""then'判断是否有与修改的职位相同的setconn=opendb("oabusy","conn","accessdsn")setrs=server.createobject("adodb.recordset")//使用server.createobject方法建立recordset对象实例sql="select*frompersontypewheretypename="&sqlstr(userlevel)&"andusername="&sqlstr(oabusyusername)&"andid<>"&idrs.opensql,conn,1ifnotrs.eofandnotrs.bofthen%><fontcolor=red><%=keepformat(userlevel)%>已经存在,请换名重试!</font><br><%elsesql="updatepersontypesettypename="&sqlstr(userlevel)&"whereid="&idconn.Executesql4.2.4查询个人资料设计在MacromediaDreamweaver中建立personfind.asp页面,在个人通讯录主页面中点击查询按钮直接转换到personfind.asp页面,输入要查询的名字点击按钮查询就可以把要查询人的所有通讯资料都显示出来。当然也可以按照性别,单位,职务,电子邮件等条件进行查询。例如要查询通讯录中有没有一个叫张三的人的资料,可以直接在通讯录主页面中点击“查询”按钮进入“个人通讯录查询”页面,在姓名栏输入张三,单击“查询”按钮,就会显示张三是所有通讯资料,具体页面设计见图4.3所示。图4.4个人通讯录查询查询代码如下:functioncheckform(){varxm,xb,dw,zw,dzyj;xm=document.form1.xm.value;xb=document.form1.xb.value;dw=document.form1.dw.value;zw=document.form1.zw.value;dzyj=document.form1.dzyj.value;if(xm==""&&xb==""&&dw==""&&zw==""&&dzyj==""){alert("请至少输入一个查询条件!");return(false);}return(true);}4.2.5查询结果页面显示建立查询结果页面personfindresult.asp,把上述personfind.asp中查询的结果显示在personfindresult.asp页面在中。在查询页面中输入名字,如果通讯录中存在此人,则显示此人的所有通讯资料,如图4.4所示:图4.5个人工作计划查询结果如果通讯录中没有要查询的人的资料,例如输入李四在,则显示如图4.5图4.6没有找到符合条件的通讯录具体代码如下:<%ifrequest.form("submit")="查询"thenxm=replace(request.form("xm"),"'","''")xb=replace(request.form("xb"),"'","''")dw=replace(request.form("dw"),"'","''")zw=replace(request.form("zw"),"'","''")dzyj=replace(request.form("dzyj"),"'","''")sql="selectpersonrecord.ID,panytel,personrecord.userzw,personrecord.xm,personrecord.email,pany,personrecord.sex,persontype.typenamefrompersonrecord,persontypewhere"addandflag=0condition=""ifxm<>""thencondition=condition&"personrecord.xmlike'%"&xm&"%'"addandflag=1endififxb<>""thenifaddandflag=0th
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 18181-3:2025 EN Information technology - JPEG XL image coding system - Part 3: Conformance testing
- 二零二五版建筑安装工程节能评估合同模板2篇
- 二零二五年机关单位劳动合同续签与解约操作指南3篇
- 二零二五版海洋工程船舶维修保险合同3篇
- 二零二五年度教育培训机构借款合同范本:助力教育产业发展3篇
- 二零二五年红提葡萄品牌推广与销售代理合同3篇
- 二零二五版股权投资合作终止后的股权转让合同2篇
- 二零二五版保育员家庭服务与职业发展合同3篇
- 二零二五年度文化创意产业劳动保障监察与管理规范合同3篇
- 二零二五版地下管廊钢筋施工分包合同范本3篇
- 奶茶督导述职报告
- 山东莱阳核电项目一期工程水土保持方案
- 白熊效应(修订版)
- 小学数学知识结构化教学
- 视频监控维保项目投标方案(技术标)
- 社会组织能力建设培训
- 立项报告盖章要求
- 2022年睾丸肿瘤诊断治疗指南
- 被执行人给法院执行局写申请范本
- 主变压器试验报告模板
- 安全防护通道施工方案
评论
0/150
提交评论