Web课程设计——聊天室.doc_第1页
Web课程设计——聊天室.doc_第2页
Web课程设计——聊天室.doc_第3页
Web课程设计——聊天室.doc_第4页
Web课程设计——聊天室.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

合肥学院计算机科学与技术系课程设计报告 2012-2013学年第二学期课程 Web开发与应用课程设计名称 聊天室学生姓名 高昌发学号 1104013036专业班级 11计本3班指导教师 张艳明 2013年6月 目录目录2第一章、绪 论31.1题目简要描述3 1.2团队分工安排3第二章、系统需求分析32.1问题描述32.2系统功能3第三章、系统设计43.1逻辑以及物理结构43.2系统的开发环境选择53.3系统的数据库设计53.4系统的界面设计63.5系统的结构设计6第四章、系统实现及测试84.1主要模块的实现84.2系统实现过程中遇到的主要问题和解决方案84.3系统实现的特色之处134.4系统的测试开展13第五章、总结13第六章、参考文献141、 绪论1.1课程设计名称:聊天室设计内容:设计一个在线聊天室,实现用户之间实时地文字聊天。任务和要求系统内用户分为管理员和普通用户两类,普通用户可以在线聊天,管理员负责维护聊天室和用户。1系统功能和界面参考QQ聊天室。2提供注册功能,系统的访问者可以注册成为普通用户。3普通用户登陆后首先显示聊天大厅,在大厅中有多个聊天室,选择其中一个进入后可进行聊天。4用户在聊天室中可以看到本聊天室的其他用户,可以对所有人发言,也可以只对某一个用户发言。发言可以选择公开和秘密两种,如果公开则所有人都能看到该发言内容;如果是秘密,则只有接受者才能看到。聊天室的发言面板采用滚屏方式实时显示所有用户的发言5用户可以退出聊天室,到大厅后再选择进入其他聊天室,也可以从大厅退出系统。6管理员登陆后可以维护聊天室和用户。管理员可以增加、修改和删除聊天室,可以删除注册的普通用户。 1.2团队分工: 1、注册、登录、找回密码、维护个人信息部分:王冬梅2、聊天发言部分: 周丽娟3、管理员维护添加修改删除部分:高昌发二、系统需求分析 2.1问题描述题目要求的是做一个聊天室软件,能够实现多人同时在线聊天,客户能够注册系统登录进入大厅并且选择房间进入房间,在相应的房间内可以对其它人私聊或者公共聊天。如果公聊则所有人都能看到该发言内容;如果是秘密,则只有接受者才能看到;还可以维护个人信息,在大厅里修改密码等操作。而管理员可以维护聊天室和用户,能够查看所有用户,对相关房间进行添加删除修改查看聊天记录等操作。2.2系统功能依据题目,本模块需解决的首要问题是管理员登录并且进入管理员大厅,若管理员不存在还需对其进行注册。进入后台有用户信息管理、聊天室信息管理和聊天室模块管理。 为了实现这个目标,首先管理员进行登录,进入管理后台。可以查看注册的用户信息,用户进入的房间,房间拥有的人数以及聊天记录等。数据流图如下所示:3、 系统设计3.1系统采用的逻辑以及物理结构 普通用户进入网页进行登录或者注册或者找回密码,登录后进入大厅并且选择房间进入房间,在相应的房间内可以对其它人私聊或者公共聊天。如果公开则所有人都能看到该发言内容;如果是秘密,则只有接受者才能看到。大厅还可以对用户信息进行维护和修改、注销、退出等功能。而管理员可以维护聊天室和用户信息,能够对相关房间和相关用户进行添加删除修改的操作。 普通用户登录流程图如下:管理员登录流程如下:3.2 系统的开发环境选择tomcat6.5+SQL server2005 + Java JDK 6.0+Myeclipse6.53.3 系统的数据库设计,各表展示以及表与表之间的E-R关系图 表汇总表名功能说明用户信息表(xinxi)存放普通用户基本信息管理员信息表(guanli)存放管理员信息在线用户信息表(line)存放在线用户信息私聊房间(slroom)存放私聊信息聊天信息表(chat)存放聊天记录房间信息表(room)存放房间信息 表1.用户信息表(xinxi)序号字段名类型是否为空是否主键描述1idint否是自增主键2yonghumingvarchar否否用户名3mima varchar否否 密码4xingbievarchar否否 性别5nichengvarchar否否 昵称6mibaowentivarchar否否 密保问题7mibaodaanvarchar否否 密保答案8logontimevarchar否否登录时间 表2.管理员信息表(guanli)序号字段名类型是否为空是否主键描述1namevarchar否是管理员名称2 mimavarchar否否密码8xingbievarchar否否 性别 表3.在线用户信息表(line)序号字段名类型是否为空是否主键描述1idint否是自增主键2chatroomvarchar否否房间号3yonghuming varchar否否 用户名4typevarchar否否 登录状态 表4.聊天信息表(chat)序号字段名类型是否为空是否主键描述1idint否是自增主键2chatroomvarchar否否房间号3transvarchar否否 发送者 4chattimevarchar否否 聊天时间5contentvarchar否否 聊天内容6actionvarchar否否 发送表情 表5.房间信息表(room)序号字段名类型是否为空是否主键描述1noint否是自增主键2chatroomvarchar否否房间号3lastnum varchar否否 最大人数4numvarchar否否 现有人数 表.6序号字段名类型是否为空是否主键描述1xuhaoint否是自增主键2yhmvarchar否否 发送者3lrvarchar否否 内容 4datevarchar否否 时间5roomvarchar否否 房间6yhm1varchar否否 接受者3.4 系统的界面设计普通用户登录界面管理员登录界面:大厅界面:3.5系统结构设计本系统分为三大模块,即登录注册模块、聊天室模块、管理员模块,具体描述如下:模块名文件名功能描述用户登录注册模块main.jsp普通用户登录界面logon.jsp用户登录后处理界面error.html用户名密码错误提示zhuce.jsp用户注册界面zhuceProc.jsp用户注册处理界面zhuce2.jsp用户注册成功提示foungpwd.jsp找回密码界面found.jsp找回密码界面处理right.jsp输入新密码界面right1.jsp输入新密码界面处理mimatishi.jsp修改密码成功 聊天室模块dating.jsp大厅界面pubroom.jsp进入的房间界面checkroom.jsp选择房间slroom.jsp私聊房间input.jsp提交公聊内容界面huanfang.jsp换房间界面input2.jsp聊天内容处理界面ckltnrjl.jsp查看聊天记录modifyuser.jsp维护个人信息界面logout.jsp注销用户界面tuichu.jsp退出界面modifyuersProc.jsp维护个人信息界面处理modifyprow修改密码界面 管理员模块guanli.jsp管理员登录界面guanlilogon.jsp管理员登录处理界面houtai.jsp后台处理界面yonghu.jsp用户管理界面lts.jsp聊天室模块管理ltxixni.jsp聊天信息查询界面dating1.jsp管理员进入大厅界面ltchakan.jsp查看聊天内容界面四、系统实现及测试4.1、主要模块的设计主要界面包括管理员登录、用户信息管理、聊天模块管理、聊天信息模块管理,界面如下:guanli.jsp:管理员登陆界面;guanlilogon.jsp:登录后与数据库进行连接判断的界面,如果输入的管理员名称和密码与数据库中的相匹配则登录成功;核心代码:用户名或密码错误!请重新登录!guanlizc.jsp :管理员的注册界面;guanlizc1.jsp ,guanlizc2jsp:注册后的判断正确与否以及正确后将信息存储到对应的数据库中去;foundpwd.jsp,found.jsp:忘记密码,然后根据当初在注册时所填的密保问题已经密保答案来达到重新设置密码的目的;right.jsp,error.html,right1.jsp,mimatishi.jsp:在修改密码过程中,对应的正确或错误页面提示,以及相应页面出现后对应的处理方法; houtai.jsp:登陆界面成功登陆后,进入到的后台管理界面;核心代码: 聊天室后台管理系统今天是,欢迎 用户信息管理聊天室模块管理聊天信息模块管理 其它模块管理其它模块管其它模块管进入大厅退出 这里是后台管理!yonghu.jsp:用户信息管理界面;核心代码: 用户的信息如下: 用户名 昵称 性别 操作选择项a href=chakan.jsp?id=查看登录日期 chakan.jsp:在用户信息管理界面中对应的查看用户最近登陆时间的界面;核心代码: 的最后一次登录的时间为: a href=tichu.jsp?xuhao= 踢出聊天室  返回tichu.jsp:如果用户最近登陆的时间比较久远,也就是达到3个月没有登陆了,然后管理员可以对用户进行删除的功能;lts.jsp:聊天室管理界面;核心代码: 房间序号 房间名称 房间最大人数 操作选择项 a href=edit.jsp?no=编辑 a href=javascript:btnDelete()删除 add.jsp,addProc.jsp:聊天室的增添功能;edit.jsp,editProc.jsp:聊天室的修改功能;shanchu.jsp:聊天室的删除功能;ltxinxi.jsp:聊天信息管理模块;ltchaxun.jsp:在聊天信息管理界面中,根据房间名的不同来查看相应的房间中的用户聊天信息;核心代码: 说: dating1.jsp:在后台管理中,管理员可以直接其中进入到大厅中去。4.2、系统实现过程中遇到的主要问题和解决方案一、在对聊天室信息查询的模块中,刚开始时总是不能准确的显示出正确的界面,老是和其他房间信息混淆,输出的内容也是很混乱的,后来我想到的在从数据库中读取聊天信息时,首先确定房间这个信息,只有在房间对的情况下,再把相应的信息输出来,这样在查看聊天信息这个超连接时就要把房间这个关键字传过去,这样才能保证房间的正确性,然后在一次从数据库中输出对应的用户名、时间以及所说的内容,这样就解决了问题。二、还有就是在用户管理的时候,我们的管理员是要根据用户最近一次登陆的时间来看,如果长时间没有登陆过(我们这里设置时3个月),则管理员通过手动的方法将该用户删除,这样可以起到管理空间的作用,但是在这个时间的获取上又出现了问题,就是说用户每次登陆时时间都会发生改变,所以,后来我在登陆界面的时候就获取登陆的时间,并且根据用户名这个关键字对数据可信息表中的用户信息进行更改,将对应的时间改为此刻登陆的时间,这样数据库中存储的时间就是用户最近登陆的时间了,然后在后台管理时,在对用户进行查询登陆时间时,则直接根据用户名查询数据库中对应的最近登陆的时间,这样管理员就可以准确的判断出用户对账户的使用情况,也可以根据时间去删除对应的用户。4.3系统实现的特色之处特色之处:我们管理员可以对每个房间的聊天信息进行查询,这样使得功能更加的完善,还有就是管理员删除用户不是直接删除的,而是要根据用户登录的时间来判断的,也就是说可以查看到用户最近一次登录的时间,如果用户最近一次登录已经是3个月甚至更长的话,管理员就可以对其进行删除操作,这样使得更加符合实际一些,也更理性化一些。还有就是聊天室也是活动的,也就是说管理员可以根据需要对房间的增减和删除,而且这个操作可以直接影响到数据库,也就是会影响到大厅里面的聊天,这样可以更贴近需求些,而且管理员也可以从后台直接进入大厅中,去查看相应的内容。4.4系统的测试开展管理员登录界面:根据判断所填的用户名和密码在数据库中是否存在,存在则进入,否则显示错误!后台管理界面:右上角的时间时在进入的时候获取当前的时间,然后输出,至于管理员名是在登陆成功时就将用户名存起来,然后输出即可,左边主要有3个功能,分别有一个超链接,超链接后在右边框架中显示。用户信息管理界面:右下角之间显示的内容是从数据可中读取出来的,分别在每行有一个查看登陆时间,这样可以根据时间来进行删除操作。查看登录时间界面:这个界面是点击用户名为高昌发后面的查看登陆时间而显示出来的界面,这样就可以看到用户登陆的最近时间。聊天室界面管理界面:这个界面是从聊天室管理的数据库中读出对应的房间名,以及操作。聊天信息模块界面:这个界面的右下角是从聊天室数据库中读取出来的,不过后面的操作选项则是根据房间名来从聊天内容的数据库中读取出这个聊天室中聊天的内容。查看聊天信息界面:这个是聊天室名为粉色城堡中的聊天内容,可以显示出所有内容。5、 总结短短两周的课程设计就这样结束了,暂时不得不和它说声再见,但我知道此再见肯定会再次见,而且要深入学习。通过本次课程设计,我感受颇多,尽管上课时也认真听了老师的讲课,但是开始面对自己的题目时,简单的界面还可以完成的,但一些动态界面有点棘手,需要认真思考,作出判断。对jsp的认识也更加地深刻了。在这个过程中,我感觉就像人生的一个缩影,充满了酸甜苦辣。当一个问题想了好久也无法解决时,我感到沮丧与无助。当经过努力解决了一个程序上的难题时,我又感到无比的喜悦。经过了这次磨练,我又一次感受到只有付出才能有收获,成功永远属于不懈努力的人们。这次课程设计终于结束了,在设计中遇到了很多逻辑连接问题,在老师的帮助下,终于解决了,对此向老师表示感谢。其实在这个系统中还是有一些功能不是很完善的,需要我在后续的学习过程中来进一步的完善,通过这次的课程设计,我

温馨提示

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

评论

0/150

提交评论