




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
青岛理工大学毕业设计(论文)青岛理工大学毕业设计(论文)题 目 网络聊天室的规划和设计年 级 07级本科专 业 计算机科学与技术姓 名 亓明轩学 号 0752001指导教师 徐功文论文完成时间: 2010 年 6 月 20 日摘要 :聊天室主要分为WebChat、BBSChat两种。BBSChat是基于Telnet的Tcp协议,是BBS的附设功能,需要客户端Telnet程序。WebChat则采用浏览器方式,实际上是一个多人共同使用的CGI程序。其基本原理是把每个用户的发言通过浏览器传给系统,再由系统收集处理后分发给特定用户。下面所做的是一个利用ASP.NET技术、数据库技术、#C语言、ADO.NET技术制作的功能比较完善的文本聊天室。关键词:ASP.NET技术,数据库技术,#C语言,ADO.NET技术目 录第一章 引言3第二章 相关技术42.1 ASP.NET技术42.2 数据库技术52.3 C#语言62.4 ADO.NET技术7第三章 需求分析与总体设计103.1 需求分析103.1.1 功能需求103.1.2 性能需求103.2系统环境113.2.1系统运行环境113.2.2系统开发环境113.3 系统框架123.3.1 系统流程分析123.3.2 系统功能模块分析13第四章 具体实现144.1 数据库的实现14第五章 结论24参考文献25谢辞26第一章 引言随着网络的普及和人们沟通的需要,网络聊天室已经成为人们沟通的一个重要工具。许多大型的门户网站都提供功能完善的www聊天室系统,而这些聊天室系统逐渐成为年轻人认识朋友,交流感情的好场所,随着网络速度的提高,目前许多服务商推出了多媒体聊天室,能够支持语音聊天,视频聊天以及文本聊天。聊天室主要分为WebChat、BBSChat两种。BBSChat是基于Telnet的Tcp协议,是BBS的附设功能,需要客户端Telnet程序。WebChat则采用浏览器方式,实际上是一个多人共同使用的CGI程序。其基本原理是把每个用户的发言通过浏览器传给系统,再由系统收集处理后分发给特定用户。下面所做的是一个功能比较完善的文本聊天室。本网站以网络交友为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实最贴近的实用型网站。 第二章 相关技术2.1 ASP.NET技术A是建立在通用语言运行时刻库(CLR)上的应用程序框架。他用来在服务器端构建功能强大的web应用程序。A提供了几个超越以前web开发模式的优点: 增强的性能。A是运行在服务器端的编译后的CLR代码,而不是像ASP那样解释执行。 A利用提前绑定,即时编译,本地优化和缓存服务来提高性能。所有这一切,性能远远大于你以往写的每一行代码。 世界级水平的开发工具支持。在Visual Studio .net的集成开发环境(IDE)中,A框架由丰富的工具箱和设计器组成。所见即所得的(WYSIWYG)编辑方式、拖放服务器控件、以及自动部署,仅仅是这一强大工具所提供的一少部分功能。 强大而富有弹性。由于是基于(CLR)的,因此整个.net平台的强大和富有弹性,同样可以应用于web应用程序开发者。.net框架的类库、消息以及数据访问解决方案,都可以无缝集成到web。A也是语言中立的,因此你可以选择你最熟悉的语言,或者通过几种语言来共同完成一个应用。而且,CLR的互用性可以保证你升级到asp.ent的时候,现存的基于COM的开发投资依然保留。 简单。A使执行常用的工作变得很容易,比如从简单的表单提交、客户端验证,到部署和站点配置。例如,允许你建立用户接口,实现页面和逻辑代码的分离,同时,就像vb的表单执行模式那样来处理事件(也就是说,由页面驱动模式变成了事件驱动模式)。此外,CLR简化了部署,用来管理代码服务,例如自动参照和垃圾回收。 易于管理。A使用一个基于文本的、分层次的配置系统,它简化了服务器端环境和web应用程序的设置。由于配置信息用纯文本格式保存,新的设置不需要本地管理工具的支持。这种“零本地支持”的理念也同样应用到了部署应用程序。A应用程序部署到服务器,简化为复制必要的文件到服务器。在部署,甚至替换正在运行的变异代码的时候,也不需要重新启动服务器。 可伸缩性和有效利用性。A被设计成可伸缩的,能为集群和多处理器环境设计提高性能。而且,运行时刻密切监视和管理进程,这样,如果发生了错误的行为,例如漏洞和死锁,新的进程会在当前位置建立,来帮助你的应用程序继续处理事件请求。 可订制和扩展。A提供一种良好的扩充结构,允许开发者在适当的级别“插入”他们的代码。事实上,使用自己的编写的组件可以扩展或者替换运行时刻的任何子组件。执行自定义验证或状态服务变得前所未有的容易。 安全性。内建的windows验证和每一个应用程序的独立配置,你可以认为你的应用程序是安全的。2.2 数据库技术SQL Server是一个关系型数据库引擎,只要一套系统就既能支持小型数据库,也能支持企业级大型数据库。数据库系统的管理工作包括许多富于挑战性的任务,特别是运行性能的管理工作。它采用了多线程技术,支持存储过程,采用基于成本的优化技术,在核心层实现数据完整性约束,并具有很强的安全保密性。它的工作主要是负责高速计算,数据管理,安全性及事务管理。SQL Server2000在SQL Server7.0的基础上新增了许多的功能,使得用户能更方便、更快捷的管理数据库和开发应用程序。SQL Server2000最常用的是企业管理器。通过企业管理器可以方便的可视化的建立起数据库系统,从而可以在对SQL不是很精通的情况下,一样建立起一个良好的数据库来。企业管理器是一个集成化的数据库操作环境,几乎所有的数据库操作都可以在这里里面完成。它是SQL Server 2000的主要管理工具,提供了一个遵从微软管理控制台的用户界面,使用户可以进行如下的操作:定义运行SQL Server的服务器组。将个别服务器注册到组中。为每个已注册的服务器配置所有SQL Server选项。在每个已注册的服务器中创建并管理所有SQL Server数据库、对象、登录、用户和权限。在每个已注册的服务器上定义并执行所有SQL Server管理任务。通过调用SQL查询分析器,交互的设计并测试SQL语句、批处理和脚本。调用为SQL Server定义的各种向导。 结构化查询语言SQL(Structured Query Language)是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制4个方面,是一种通过的、功能极强的关系数据库语言。目前已成为关系数据库的标准语言。常用的功能包括数据定义、查询、数据更新和视图。要在良好的SQL Server方案中实现最优的性能,最关键的是要有1个很好的数据库设计方案。在实际工作中,许多SQL Server方案往往是由于数据库设计得不好导致性能很差。所以,要实现良好的数据库设计就必须考虑这些问题。2.3 C#语言C#是一种面向对象的程序设计语言,它的基本语法与C/C+相同,其将软件开发中的逻辑分成5大部分:商业外观层(BusinessFacade),商业规则层(BusinessRules),数据访问层(DataAccess),Model层等。这种逻辑上的划分使得软件的开发更加方便,并使语句和数据库的访问分开,而由商业规则层单独提出规则,便于软件的扩展和维护。2.4 ADO.NET技术ADO.NET是在.NET Framework平台中负责数据存储的对象。ADO.NET是Active Data Objects2.6(ADO)的后续版本。ADO.NET的主要目的是可以在.NET Framework中更容易的创建分布式的数据共享的应用程序。ADO.NET建立在如XML的业界的基础之上,就像ADO,它提供了一个数据访问接口,以便和OLE DB兼容的数据源进行通信,如SQL Server或Oracle。应用程序可以使用ADO.NET连接这些数据源,并检索,处理和更新数据。可能大家已经学过ADO,那么在旧版本还能正常工作时,为什么还要学习新的数据访问对象模型呢?如果需要,也可以在NET.Framework中使用ADO,但需要为COM层方面付出一些性能上的代价,另外,NET.Framework并不支持COM Variant数据类型,这是ADO用于Recordset对象中的Field对象值的数据类型,也就是说,如果在.NET中使用ADO Recordset对象,为了访问数据,NETCLR就经常会对每个字段进行类型转换,如果要一直访问数据,进行这些类型转换就会造成太大的系统开销。 使用ADO.NET最重要的理由是可以获取一个真正断开连接的数据体系结构和XML的紧密集成和一个通用的数据表示法,可以将各种不同数据源中的数据组合起来,并优化了和数据库交互的功能,同样ADO.NET和NET.Framework的其它部分紧密的集成在一起,并充分利用NET.Framework中所有对象的层结构及设计模式。ADO.NET建立在ADO的基础之上,而且为数据访问工具集提供了许多工具。ADO.NET的特点 ADO.NET使用不连接的数据结构; 数据被缓存到数据集内; 数据集独立于数据源; 数据保持为XML数据需要从数据存储区移动到数据集以及从数据集移动到各种组件,在ADO.NET中,传统数据的格式是XML。类似地,如果需要保持数据,则将其存储为XML,如果有XML文件,则可以像使用任何数据源一样使用它,并从它创建数据集。实际上,在ADO.NET,XML是数据的基本格式,ADO.NET数据API自动用数据集内的信息创建XML文件或流,并将它们发送给另一个组件,第二个组件可以调用类似的API将XML读回数据集。 使数据协议以XML为基础可提供一个多便利之处,XML是工业标准格式。这意味着你的应用程序数据组件可以与其他任何应用程序中其他任何组件交换数据,只要该组件理解为XML,许多应用程序被编写为可理解XML,为异类应用程序间交换提供空前高的水平。XML是基于文本的,数据的XML表示形式不使用任何二进制信息,这使它可以通过任何协议发送,大多数防火墙将阻塞二进制信息,但通过将信息格式化为XML,组件仍可以方便的交换信息。对于大多数方案,不必知道XML便可以使用ADO.NET中的数据。ADO.NET自动根据需要将数据转换为XML或XML自动根据需要将数据转化为ADO.NET,便使用普通编程的方法与数据进行交互。 架构定义数据结构尽管不必知道有关XML的任何事情便可以读写数据库和数据集,但也有一些事情使用XML恰是你追求的标准。不打算访问数据而要进行数据设计时的情况,也就是,在ADO.NET中使用元数据时,将直接使用XML。数据集以XML表示,数据集的结构使用XML架构进行定义,就像数据集包含的数据可以从XML加载和序列化为XML,数据集的结构也可以从XSD架构和序列化为XSD架构。对ADO.NET中的数据进行的大部分操作,不必深入钻研架构。通常,基于Visual Studio.NET工具将可以在可视化设计器中进行操作,并根据需要生成和更新架构。ADO.NET中的连接是在每个托管提供程序中,一单个connection类的形式来建模的。Connection类表示到一个数据源的单个连接,但并非一定表示单个调用。ADO.NET是为断开数据而设计的,所以必须为重复打开和关闭连接提供connection类。创建好connection对象后,接着要设置连接字符串,它描述了数据源的位置(本地数据库服务器)。接着,我们打开连接并在ADO.NET数据库上执行一个命令。一旦检索到相关数据,就关闭连接。完成对数据的处理之后,就可以重新打开连接,并继续操纵相同的数据元。数据处理期间,数据库的连接处于释放状态,所以数据库服务器的复合大大的减轻了。需要时,我们在重新建立连接。虽然重新建立连接会产生一定的开销,但利用ADO.NET的连接池功能,就可以尽可能的减少这种开销。我们将数据库连接字符串放在web.config文件中,便于运用连接池,提高系统的性能。第三章 需求分析与总体设计3.1 需求分析3.1.1 功能需求 能够注册用户,管理用户信息,获取登录用户的IP; 聊天者把语句写入文本,输出到屏幕上; 浏览器不断的对屏幕输出进行刷新、读取; 实时更新在线的客户; 能够公开聊天、私下聊天等等; 管理员对聊天者进行管理,能够禁止某用户或者IP登录,把用户踢出聊天室等等 3.1.2 性能需求在聊天室没有满员的情况下,普通用户能够登录的聊天室进行文本的聊天,能够方便的实现公共交谈、选择颜色、添加表情、进行私聊等,新用户注册时能够保证用户昵称的唯一性。网络管理员能够方便的浏览所有用户的信息,能够禁止某用户或者IP登录,把用户踢出聊天室等等。考虑到需要验证的内容,聊天室能容纳的用户不能太多,在本聊天室中设置最多可以容纳20个用户。在程序中使用Application(“usercount”)来标记当前的用户数,在进入聊天室之前首先监测聊天室是否已满,如果已经达到极限人数,则不允许任何用户登录。在登录时用Sessionupower来判断用户的权限,如果是普通用户通过验证后会进入聊天室主页,如果是管理员则会进入管理员管理管理页面。3.2系统环境由于本系统采用了Visual Studio.NET设计,故可以运行在所有支持.NET虚拟机的系统中。3.2.1系统运行环境硬件配置:CPU:400HZ Pentium处理器、或者AMD处理器 内存:128M 硬盘:800M自由空间. 显示器分辨率:不低于800*600 4、所需软件 IIS 5.0或者IIS 5.5 或者IIS 6.0 .NET Framework 1.1 或者 .net Framework 2.0 beta Microsoft Access、SQL Server 2000 软件环境: 所需要的操作系统: Windows 2000 Server 浏览要求 :不低于IE 5.5 3.2.2系统开发环境硬件配置:CPU:400HZ Pentium处理器、或者AMD处理器 内存:128M 硬盘:800M自由空间. 显示器分辨率:不低于800*600 4、所需软件 IIS 5.0或者IIS 5.5 或者IIS 6.0 .NET Framework 1.1 或者 .net Framework 2.0 beta Microsoft Access、SQL Server 2000 软件环境:操作系统:开发环境所在的系统为Windows2000 Server。 数据库:使用Microsoft SQL Server 2000 数据库。开发工具:使用Visual Studio.NET编程语言,版本为Microsoft Visual Studio.NET 2003。3.3 系统框架3.3.1 系统流程分析流程图:网络聊天室普通用户网络管理员管理员浏览用户信息管理员禁用某用户用户登录取回密码用户注册聊天室主页 进入图1 系统流程图3.3.2 系统功能模块分析在此聊天室的完成过程中我主要做用户管理,如注册、删除、对用户的聊天内容限制、禁用某用户或某IP,下面我主要对这几部分的功能进行分析:用户登录界面(Login.aspx):管理员和普通用户我都用这一个界面,在数据库的用户表中我设置了一个用户级别的字段,用于区分普通用户和管理员,在程序中用Session(“UPower”)来保存用户的权限,如果是0则为管理员通过验证后会进入管理员管理页面,如果是1通过验证后会进入聊天室主页可以进行聊天。用户注册页面(register.aspx):此页面用于新用户注册,将新用户信息保存数据库中,此过程要保证用户的昵称不能有重复,另外要取得登录用户的IP地址保存到数据库中。管理员管理页面(manage.aspx):管理员能够浏览用户的信息,能够根据用户名或者用户的IP地址剔除用户。取回密码页面(takepwd.aspx):如果用户已经注册过,但由于某种原因忘记密码了,可以进入此页面取回用户的密码。密码将被发送到用户注册的邮箱当中。第四章 具体实现4.1 数据库的实现管理数据库和数据库对象当你使用SQL server时,面临的第一个任务就是创建一个新的数据库。SQL server提供了三种不同的方式用于创建新数据库:使用创建数据库向导使用SQL server Enterprise Manager使用Transact-SQL语言创建数据库向导会引导你完成整个的数据库创建过程。使用向导:先单击Enterprise Manager工具栏中的Run a wizard 按纽,然后选择Database文件夹,双击相应的向导。使用Enterprise manager创建数据库:单击工具栏NEW DATABASE按纽(注意:无论是创建数据库向导还是NEW DATABASE按纽,都只是在选择了服务器或是选择它的一个子实体后才会出现)。另一种办法是:在DATABASE文件家上单击右键(该文件家出现在服务器层次之下)并选择NEW DATABASE。使用DATABASE PROPRETEES对话框可以显示或设置新数据库所有属性。第五章 结论通过本次课题设计,无论从专业理论知识还是动手实践经验我都得到了很多锻炼,并具有较大的提高。在动手作毕业设计之前,总觉得不会太难做到,可是真正动手做的时候才发现实际上我们还存在很多的不足之处。可以在做设计的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广西事业单位笔试真题2025
- 公考安徽真题2025
- 2025年宜兴市事业单位考试真题
- 农发行抚州市临川区2025秋招小语种岗笔试题及答案
- 2025年乡村旅游发展报告:文旅融合视角下的乡村旅游与乡村旅游与乡村旅游规划
- 2025年食品安全追溯技术在食品行业食品安全信用体系建设中的应用报告
- 平硐盲竖井开拓课件
- 2025年新能源汽车充电桩智能化升级改造技术报告
- 往年统招试卷真题及答案
- 2025网络文学IP产业链全链路开发模式创新与价值实现路径研究
- (2025年)国家能源集团笔试试题(含答案)
- 学校教师请假管理办法(2025修订版)
- 2025年潍坊辅警考试题库(附答案)
- 2025全民国防教育日主题班会课件
- 黄冈市2025年高三年级9月调研考试(一模)英语试卷(含答案解析)
- 彩虹 第一课时 课件
- 2025至2030氨基酸产业市场深度调研及发展现状趋势与投资前景预测报告
- 纪委监委案件管理办法
- 医疗质量安全专项整治行动自查清单8-患者隐私
- 知道智慧树实验室安全与防护满分测试答案
- 人行统计制度培训课件
评论
0/150
提交评论