聊天室课程设计报告
在线聊天系统
指导老师:xx
学号:xxxxxx
姓名:xx
日期:2014.5.21
目录
第一章、绪论 (2)
1.1选题的背景 (3)
1.2 选题的目的和意义 (3)
1.3 可行性分析 (3)
第二章、需求分析 (3)
2.1系统名称 (4)
2.2任务概述 (4)
2.3设计目的 (4)
2.4系统功能 (4)
2.5详细功能 (4)
第三章、总体设计 (4)
3.1 系统的名称和目标 (5)
第四章、界面设计 (5)
第五章、主要源代码 (7)
5.1 index (7)
5.2 index2 (9)
5.3 main (11)
第六章、设计心得 (18)
第一章、绪论
1.1选题的背景
繁忙的工作使人们没有时间去跟远方的亲戚朋友相聚,昂贵的电话费使我们不能聊的尽兴,因此网络聊天诞生了,并且成为了时下极为流行的一种沟通方式,特别是在现代高新的技术推动下,在线聊天呈现出良好的势头和广阔的前景。人们只需要有一台电脑,连上网就可以聊天了。在聊天室里,你可以尽情的跟朋友聊天,共同讨论问题,不用担心会花很多钱,而且还可以用各种表情来表达你的喜怒哀乐,还可以跟朋友一起玩游戏,和朋友一起分享你喜欢的歌。而随着软件开发在中国的快速崛起,使得越来越多的年轻有志向为软件事业奉献人加入到软件开发这个大家庭来,而当前最为快速的web 开发语言java 有着其天生的优越性。
基于以上这些优点,使用frame 框架加JSP 设计出一个高效的网上聊天室,并作为毕业设计研究课题具有非常重要的研究价值。
1.2选题的目的和意义
这次我所设计的课题正是互联网与社会生活之间的紧密关系的体现,现今的社会,人们已经离不开了网络,网络已经成为人与人之间交流的一种形式,他能够把事情的复杂化转为简单化。伴随着互联网的飞速发展,对作为人们交流的研究和设计变得越来越重要。同时人们更亲睐可以实时进行沟通的方式,于是在线聊天室应运而生。本程序的主要模块有四个:用户注册模块,管理员管理模块,主要的聊天模块和收发信息模块。
1.3可行性分析
可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。
第二章、需求分析
2.1系统名称
系统名称为网络聊天室
2.2任务概述
使用JSP和JavaBean编写一个网络聊天室.这个网络聊天室提供多个用户及时并发通信的平台.未注册用户可以注册成系统会员,已注册用户可以通过登录进入网络聊天室.聊天室可以选择我聊天室中其他不同的用户作为发言的对象,并可以使用个性的发言选项发言.
2.3设计目的
需要提供支持用户登陆以及身份验证的WEB界面和实现后台对应功能的模块。
2.4系统功能
本程序的主要模块有四个:主要的聊天模块和收发信息模块。聊天控制模块是本程序的核心,具体实现基于JSP的即时聊天功能。
2.5详细功能
1、需要提供支持用户登陆以及身份验证的WEB界面和实现后台对应功能的模块。
2、需要为普通用户和管理员提供一个浏览所有聊天室的界面和对应后台功能模块。
3、需要为普通用户和管理员提供一个支持多人聊天的界面和对应的后台模块。在这个界面中用户和管理员可以选择聊天对象,也可以想聊天对象发送信息。
4、需要为管理员提供一个查询所有用户的界面和对应的功能模块,这个界面其实就是管理员实现其管理功能的界面,在这个界面里,管理员可以实现“赶人”的功能,也可以实现“删除聊天用户”的动作。
第三章、总体设计
3.1系统的名称和目标
名称:基于JPS在线聊天室的开发
目标:利用JSP技术结合其他网络技术开发一个具备网络聊天功能的JSP聊天室,包括注册,登录验证,聊天和各种信息的管理,及其他附加功能。
3.2系统总体结构
本系统分为四个部分,主要包括聊天模块,用户登入模块,管理模块。
第四章、界面设计
采用Dreamweaver软件来开发jsp的界面。Dreamweaver软件用来开发网页的界面很方便,它有“代码”“设计”“拆分”3种开发模式,可以方便的完成基本代码的设计,之后直接将其中的代码直接复制到相应的jsp页面中。
第五章、主要源代码
5.1 INDEX
function check(){
if(https://www.360docs.net/doc/b310406276.html,ername.value==""){
alert("请输入用户名!");https://www.360docs.net/doc/b310406276.html,ername.focus();return false;
}
}
body {
background-image: url(../u=2718810268,2535136787&fm=23&gp=0.jpg); }
body,td,th {
color: #FF33CC;
}
.STYLE4 {color: #9933CC}
.STYLE6 {color: #FF00FF}
5.3MAIN
window.setInterval("showContent();",1000);
window.setInterval("showOnline();",10000);
//此处需要加&nocache="+new Date().getTime(),否则将出现在线人员列表不更新的情况
function showOnline(){
var loader=new net.AjaxRequest("online.jsp?nocache="+new
Date().getTime(),deal_online,onerror,"GET");
}
function showContent(){
var loader1=new net.AjaxRequest("content.jsp?nocache="+new
Date().getTime(),deal_content,onerror,"GET");
}
function onerror(){
alert("很抱歉,服务器出现错误,当前窗口将关闭!");
window.opener=null;
window.close();
}
function deal_online(){
online.innerHTML=this.req.responseText;
}
function deal_content(){
content.innerHTML=this.req.responseText;
}
function set(selectPerson){ //自动添加聊天对象
if(selectPerson!="<%=session.getAttribute("username")%>"){
form1.tempuser.value=selectPerson;
}else{
alert("请重新选择聊天对象!");
}
}
window.onbeforeunload=function(){ //当用户单击浏览器中的“关闭”按钮时,执行退出操作
if(event.clientY<0 && event.clientX>document.body.scrollWidth){
Exit(); //执行退出操作
}
}
}
.STYLE3 {
color: #0066FF;
font-size: 10pt;
}
.STYLE4 {
font-size: 14pt
}
.STYLE6 {font-size: 24pt}
body {
background-image: url(../u=1027243525,4105829609&fm=23&gp=0.jpg);
}
-->
background="../u=2947627324,4180207575&fm=23&gp=0.jpg" bgcolor="#00CCFF" class="STYLE2" id="online" style="padding:5px">在线人员列表 | background="../u=1027243525,4105829609&fm=23&gp=0.jpg" bgcolor="#FFFFFF" class="STYLE3" id="content" style="padding:5px">聊天内容 |