《聊天室课程设计报告》由会员分享,可在线阅读,更多相关《聊天室课程设计报告(7页珍藏版)》请在金锄头文库上搜索。
1、聊天室系统课程设计报告系部:中印计算机软件学院成员小组: 范甜甜 闫安冉 曹培培 李秀珍小组组长:闫安冉班级:09 级应用技术一班内容摘要:网络聊天很早就成了 Internet 中一个非常热门的应用,聊天室作为一个能够吸引人气的栏目,是网站中十分常见。事实上,聊天室在在远程教育、远程医疗及网络会议等系统中的应用也是相当广泛的。我们觉得随着计算机网络日新月异的发展,人们的交流方式越来越多,用于实现单一的即时通讯、文件共享的软件实在太少,并且,它们中大部分都是绝对的 C/S 模式,对远程服务器有非常大的依赖性,没有彻底实现点对点的交流。因此,建立一个好的在线交流聊天系统十分重要。互联网的大多数网站
2、都建有聊天室,并且有专业聊天网站提供聊天服务。本文所述的内容是“网络聊天系统”。本文从系统开发、运行环境的选择、系统可行性分析、系统功能的需求分析、功能模块的划分、数据库及数据表的设计与开发到系统功能模块的具体开发实现都进行了详细的分析和介绍。本系统采用 ASP.NET 2.0 作为构建平台制作各个操作模块的界面,用 SQL Server 2000 作为后台数据库服务器。关键词: 网络聊天系统, ASP.NET , SQL Server 数据库1、设计主要内容及目标:本系统是用户用过浏览器进入聊天系统。本系统主要功能是实现网上聊天,可以多个用户互相通信,需要用户注册属于自己的用户名。该聊天系统
3、包括浏览器和服务器两部分:首先,新用户必须通过注册获得一个自己的用户名,然后,用户才可以使用这个用户名登录进入聊天系统。该系统有一个聊天服务器,用于检查客户登录请求,转发用户所发出的消息,并负责删除退出的用户。浏览器部分主要实现登录到聊天服务器,向服务器发送各种请求和指定用户进行聊天等功能。聊天包括私聊和公聊,同时用户还可以修改自己的个人资料和登录密码,也可以增加和删除好友等。如果是管理员,则可以统计注册的用户名单、删除注册用户和修改用户权限。2、所需数据库的实现:本系统采用基于.NET 的 ASP.NET 开发。.NET 是 Microsoft 推出的基于 Internet 的应用程序开发平
4、台,通过.NET 可以将用户数据存放在网络上 ,并且随时随地使用户可以使用与.NET 兼容的设备访问所有重要数据,使以前的 web 站点信息“孤岛”变成了“组合体” ,.NET 平台构成了独立于语言,可在 .NET 兼容的各种设备上运行的应用程序的基础。因此,采用.NET 开发在线聊天系统可以提高开发效率和系统性能。基于.NET 平台的 ASP.NET 支持强类型语言,通过继承机制来支持代码的重用,ASP.NET 页的代码可以与 HTML 设计和文本分离,比 ASP 页更整齐,而且执行速度比 ASP 页快。在本次设计中采用了 C#语法,Windows XP Server 操作平台。3、系统功能
5、需求分析网上聊天系统是常见的,也是比较有代表性的 Internet 应用系统之一,其实现的难点是聊天怎样保存聊天内容以及怎么样将聊天的信息及时快捷地在服务器和用户之间进行传递和共享。目前常见的聊天内容保存方式有三种:利用数据库直接保存聊天内容;利用文本文件保存聊天内容和利用 Application对象保存聊天内容。这三种聊天内容保存方法的基本过程和开发的难易程度相似。因为在聊天过程中客户端需要频繁地向服务器端读写信息,而数据库和文本文件的读写都需要消耗一定的服务器资源,速度相对 Application 要慢一些 ,因此网上聊天系统一般利用 Application 对象存储聊天过程中的相关信息。
6、1、在线聊天系统具有如下功能:建立用户注册信息、用户登录、用户进行聊天(公聊、私聊)、用户退出聊天。聊天页面功能分区为讯息区(显示聊友对话内容)、在线用户 vr(显示聊友的头像、昵称)、发言区(让聊友能够按照个性化风格来发表自己的观点,提供让聊友选择聊天对象、密谈和清除发言的功能)。聊天系统功能模块,系统功能模块图如图 1.1 所示。 图 1.1 在线聊天系统功能模块图 用户登录:查询是否注册用户,若不是进行用户注册。 用户注册:用户信息输入,连接数据库,注册用户。 在线用户:从在线用户数据集中读取或删除用户。 发表内容:选择聊天内容格式设置,发表聊天内容,私聊、公聊选择。 聊天内容:从 Ap
7、plication 里读取公聊和私聊的内容。 退出:退出聊天系统。(3)系统总体流程如下:如图 1.2 所示聊天系统需要两个数据表:聊天信息表 ChatInfo、用户信息表 Userlnfo。表 1.2.1 聊天信息表 ChatInfo3.3.1 表 1.2.2 发送者信息表 Userlnfo 表 1.2. 3 接收者信息表 ChatInfo数据库的连接若使用的是“本地系统帐户” ,身份验证是“Windows 身份验证模式” ,则无用户名和密码,配置数据库连接字符串的程序代码如下:登录功能的实现要实现登录的功能就是在用户输入用户名的时候判断是否为空或者是否用户名重复,如果是则不能进入聊天系统,
8、要求用户重新输入,否则用户进入聊天室。这里只需要一个判断语句就可以完成,把表单中的 username 文本框中的内容存入 username 变量中,并判断 username 变量是否为空,如果是则返回登录界面;如果不是则把“欢迎某某参加聊天。”这句话存入application(“show”)变量中(这样同时实现了系统公告)。并通过 session(sname)=username application(sname)=usernameapplication(allname)=username&application(allname)来获得所有人的名字,最后使用返回到聊天界面。私聊功能的实现思路这
9、是发送方代码:这是接收方代码:结果分析和总结:本系统功能虽简单,但目的是了解基于NET 的 Web 应用程序的开发过程,如果要完善系统,可以在上述程序上增加后台管理功能。测试中本系统,具有易扩展、易维护、具有相当程序的稳定性等特点。该系统实现了一些基本的功能,如注册、登录。课程设计的过程是一个学习与研究的过程,而且,我深刻地认识到如果在实践中学习与研究,所掌握的知识就更为扎实。我使用了 ASP.NET 为实现平台,SQL Server 2000 为后台数据库,采用 ADO.NET 技术进行数据库的连接,虽然系统已基本完成,但我对于 ASP.NET 的核心技术和高级编程还很陌生,不能熟练运用,对于 C#语言也不那么熟悉,这是我以后需解决的问题。还好,这一毕业设计给了我一个台阶,也给了我依次机会涉足网页制作这一方向,也许这正是课程设计的意义所在。个人体会:在这次的课程设计中,由于时间的短促,我所完成的系统并不是尽善尽美的,还有待进一步的修改和完善。让我深深地体会到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。总之,我以后要多钻研软件开发,以更加饱满的热情投入到本专业的学习中去,一丝不苟做好每一件事,争取更多的收获。