- 1.16 MB
- 2022-04-22 13:54:58 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
'jsp在线聊天室系统设计毕业论文目录1前言12可行性分析22.1技术可行性分析22.2经济可行性分析22.3社会因素可行性分析33需求分析44.1系统概要设计54.1.1系统功能模块图54.1.2系统流程图64.2数据库逻辑结构设计75详细设计及编码实现85.1系统需要解决的主要问题85.2用户登录模块设计85.2聊天者发言模块设计125.2.1聊天者以默认的设置发言125.2.2以用户自定义方式发言135.2.3发言提交和更换房间的设计165.2.4文件上传175.2.5用户离开聊天室的设计185.3显示发言信息模块设计185.3.1记录的显示顺序和显示范围195.3.2聊天信息的自动刷新问题205.4显示在线用户模块设计215.5管理员管理模块设计235.6逻辑控制模块的设计276系统的测试和维护286.2jsp在线聊天室测试28结束语29谢辞30参考文献31
1前言随着Internet的普及和宽带网络技术的成熟,越来越多的用户进入到网络世界中享用浏览新闻、查询信息、发送邮件、在线观看电影等服务,享受网络带来的便利和办公的高效。与此同时,一个新型的Web应用程序为网民之间提供了一个即时互通信息的功能和场所,这就是聊天室。聊天室在网络早期就开始盛行了,不论是BBS、IRC都有类似的网上聊天机制。聊天室为网友提供了实时对话的渠道,是网络上极为流行的一种服务。聊天室适用于网上会议或闲聊的场合。聊天室为网友提供了较好的交友环境,网友之间互相以文字交谈,在形式上类似笔友的性质,却大大节省了书信往返的时间。
2可行性分析可行性分析是依据初步调查的结果作出系统开发可行性与否的结论的过程。可行性分析是从技术可行性、经济可行性和运行可行性三个方面考虑的,论证系统开发是否可行。2.1技术可行性分析为实现系统目标,需要技术保证。此系统开发所需要的技术主要有计算机硬件、软件技术、系统开发人员的水平、用户管理与使用的能力等。通过比较ASP和JSP这两种传统的动态网页制作技术,觉得JSP具有明显的优势:(1)作为Java平台的一部分,JSP拥有Java编程语言“一次编写,到处运行”的特点,一次写入之后,可以运行在任何具有符合Java语法结构的环境中,取代过去单一开发。而ASP主要工作环境是微软的IIS应用程序,又因Activex对象具有平台特性,所以ASP技术不能很容易的实现跨平台的WEB服务器的工作。(2)ASP仅支持组建对象模型COM,而JSP技术提供的组建都是基于JavaBean技术或JSP标签库。除此之外,JSP还有组件的可重用性,标签的可扩充性和易于维护等特点。如上的分析比较不难看出,JSP技术编写的程序运用要更加灵活,可扩展性更强,在现有技术条件下,能够完成功能目的。鉴于以上分析,系统开发在技术上是完全可行的。2.2经济可行性分析本系统开发在软件方面主要使用了JSP网站设计技术、网页制作三剑客、MyEclipse8.6、SQLserver2005后台数据库等软件,这些均可在网上下载获得,注册码且不涉及商业盈利问题,因此,在经济方面可行。
2.3社会因素可行性分析本系统仅作为实习项目而提出。不会违反相关法律法规。且本系统能保证在当前的操作环境下正常运行。Jsp在线聊天室,实现了一对一,一对的多,多对多的聊天,并且能共享文件,非常方便.综上所述,系统开发完全可行。
3需求分析这是一个具有最简单功能的聊天室。通过该聊天室,用户可以通过设置不同的用户名和密码以各种不同的身份进入聊天室,用户的类型有两种:普通用户和管理员。普通用户可以在聊天室中发送信息,也可以和指定的聊天对象用户私聊,还可以对发送的信息进行动作、颜色等方面的限制。管理员出了具有普通用户的功能外,还可以对在线用户和所有数据库中的用户进行设置,以便对聊天室进行维护。管理员可以把在线用户踢出聊天室,还可以删除其他管理员不希望再次进入聊天室的用户。聊天室又分为三类,用户可以根据自己的需要进入不同的聊天室进行聊天。系统还应具有自动把在线但不发言的时间超过系统设置的时间的用户踢出聊天室和的功能,还应具有当有新用户进入聊天室时,实时更新在线用户的功能。聊天室的特点就是要求能够实时显示出聊天者所谈的内容。即在同一个聊天室的使用者,可以在短时间内立刻看到其他聊天者的发言。作为用户喜欢的Web应用程序,出了具有能够实时显示出聊天者所谈论的内容外,还应具有以多种方式发布信息的功能。JSP正好可以满足聊天室的这种要求,它可以快速地创建和显示Web页面的动态内容。总的来说,本聊天室主要实现了以下的功能:l用户输入帐号,密码登录聊天室l用户选择聊房间,一共三个l把用户的聊天信息写入数据库l用户可以修改聊天语句的颜色,选择说话动作l用户聊天室可以选择聊天对象(私聊,群聊)l用户可以噢变换聊天房间l聊天室不断地对数据库进行刷新、读取l实时更新在线的用户l管理员管理在线用户,管理注册用户
4系统概要设计Jsp在线聊天室4.1系统功能模块图文件共享显示在线用户显示聊天信息聊天发言用户退出用户登陆管理员登陆普通用户登录查看用户信息踢出在线用户
4.2系统流程图开始用户登陆帐号错误帐号正确张却帐号判断提示从新输入或注册是否是否管理员选择聊天室选择聊天室显示聊天内容文件共享删除注册用户踢出在线用户文件共享选择动作选择聊天对象选择动作选择聊天对象结束是否退出
4.3数据库逻辑结构设计建立一个名为chatroom的sqlserver数据库。数据库中共使用四个表分别名为:表4-1用户信息表(userinfo)列名数据类型长度允许空nickNamevarchar50userPasswordvarchar50lastlogintimedatatime8Yeslastchatroomvarchar50Yesrolevarchar50表4-2在线用户表(onlineuser)列名数据类型长度允许空nicknamevarchar50chatroomvarchar50intcountint4Yeslastlogintimedatetime8Yeslastchattimedatetime8Yes表3-3发送信息表(msginfo)列名数据类型长度允许空chatroomvarchar50msgfromvarchar50msgtovarchar50chattimedatetime8Yesmsgcontenttext16YesIDint4chatactionvarchar100Yessecretint4Yes表3-3发送信息表(upload)列名数据类型长度允许空filenamevarchar50uluservarchar50ultimedatetime
5详细设计5详细设计及编码实现5.1系统需要解决的主要问题在规划设计聊天室时,首先要确定好谈话内容存储方式,JSP可以用三种形式实现聊天内容的存取:1)用全局变量Application和Session对象实现。这种形式速度快、效果好,但较消耗系统资源。2)用读写数据库的方法实现。这种方法相对简单,但会使数据库负担重。本系统采用的就是该方法。本设计选择了sqlserver2000数据库来存储谈话内容。3)用读写文本文件方法。该方法适合简单的聊天室。另一个设计聊天室时要考虑的因素就是聊天室成员的动态刷新。有的用户在退出聊天室时并不是从退出链接退出的,但服务器并不知道用户已经离开了。因此需要建立一个在线用户数据库,每隔一段时间检查一次,看用户从最后一次发言到现在是否超时,若是,则将该用户自动删除。5.2用户登录模块设计本系统需注册,输入用户名和密及即可。登录成功后,显示聊天室列表,用户选择想要进入的聊天室,则在相应的聊天室中显示出欢迎信息,并在当前在线用户中增加刚才登录的当前用户的名字。如图4-1所示:图5-1用户登录界面
5详细设计图5-2房间列表页面图5-3聊天室主界面系统的主界面是一个框架页面chatroom.jsp,定义如下:<%@pagelanguage="java"import="java.util.*"pageEncoding="gb2312"%>chatroom <%@includefile="chkSession.jsp"%>//先定义上下型框架//在上框架中再定义左右型框架
5详细设计"name="inputFrame"marginwidth="10"marginheight="10"scrolling="no"frameborder="0">您的浏览器不支持框架,对不起!