javaweb基于JSP的网络聊天室.docx

上传人:b****4 文档编号:4350989 上传时间:2023-05-07 格式:DOCX 页数:18 大小:74.06KB
下载 相关 举报
javaweb基于JSP的网络聊天室.docx_第1页
第1页 / 共18页
javaweb基于JSP的网络聊天室.docx_第2页
第2页 / 共18页
javaweb基于JSP的网络聊天室.docx_第3页
第3页 / 共18页
javaweb基于JSP的网络聊天室.docx_第4页
第4页 / 共18页
javaweb基于JSP的网络聊天室.docx_第5页
第5页 / 共18页
javaweb基于JSP的网络聊天室.docx_第6页
第6页 / 共18页
javaweb基于JSP的网络聊天室.docx_第7页
第7页 / 共18页
javaweb基于JSP的网络聊天室.docx_第8页
第8页 / 共18页
javaweb基于JSP的网络聊天室.docx_第9页
第9页 / 共18页
javaweb基于JSP的网络聊天室.docx_第10页
第10页 / 共18页
javaweb基于JSP的网络聊天室.docx_第11页
第11页 / 共18页
javaweb基于JSP的网络聊天室.docx_第12页
第12页 / 共18页
javaweb基于JSP的网络聊天室.docx_第13页
第13页 / 共18页
javaweb基于JSP的网络聊天室.docx_第14页
第14页 / 共18页
javaweb基于JSP的网络聊天室.docx_第15页
第15页 / 共18页
javaweb基于JSP的网络聊天室.docx_第16页
第16页 / 共18页
javaweb基于JSP的网络聊天室.docx_第17页
第17页 / 共18页
javaweb基于JSP的网络聊天室.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

javaweb基于JSP的网络聊天室.docx

《javaweb基于JSP的网络聊天室.docx》由会员分享,可在线阅读,更多相关《javaweb基于JSP的网络聊天室.docx(18页珍藏版)》请在冰点文库上搜索。

javaweb基于JSP的网络聊天室.docx

javaweb基于JSP的网络聊天室

 

2011-2012学年第二学期

电信学院计算机系

实验报告

 

课程名称JAVAWeb应用程序

实验名称基于JSP的网络聊天室

班级

学号

姓名

 

一、功能模块:

1、用户注册(注册用户保存在application中)

2、用户登录

3、用户注销

4、留言功能

二、要求:

1、用户注册、登录都要进行客户端检查是否信息为空

2、用户登录之后,服务器端需要检查是否是合法的用户

3、显示的每条信息都包括登录用户姓名、留言内容及留言时间

4、其它内容可以自己扩展

三、实验步骤和模块

实验主要有四个部分,分别为:

用户注册、用户登录和用户留言以及用户注销。

但因为用户注销并不是我们的主要考察内容,所以在下面的介绍及讲解过程中不再详细表述;而以其他三个部分为主。

1、用户注册

第一部分是用户注册界面,该界面主要功能是用户填写信息后提交,程序自动将用户姓名和密码保存在application中以便在用户登录时核对信息;用户如填写信息有误,可以点击重置,信息框将变为空白可以重新填写。

此模块的源代码为:

form.html

JavaWeb

functioncheckvalid(){

varstr1=login.name.value;

varstr2=login.pwd.value;

varstr3=login.sex.value;

varstr4=login.pwd.value;

varstr5=login.pwd2.value;

if(str1=="")

{

alert("没有输入用户名");

returnfalse;

}

if(str2=="")

{

alert("没有输入密码");

returnfalse;

}

if(str3=="")

{

alert("没有输入性别");

returnfalse;

}

if(str4!

=str5)

{

alert("密码不匹配");

returnfalse;

}

}

name(必须输入项):


password(必须输入项):


password(请重新输入):


phonemunber(选择输入项):


性别(必须输入项):

户口所在城市

北京市

曾经居住地

爱好:

旅游

上网

游戏

电影

看书

音乐

其他

其他爱好:


用户备注信息:

注册界面如下:

由于注册信息有要求,即客户端检查信息不能为空,如用户名和密码为空,则会出现如下错误信息提示:

而两次输入的密码一定要一致。

如果用户两次密码输入不相同,在提交时会出现如下的错误提示:

修改密码,使两次密码一致后,提交信息,信息会显示在屏幕上,如下:

用户在注册后需要核实信息!

之后点返回登陆界面,用户可选择回到主界面登录

显示信息的源代码为:

ex08.jsp

<%@pagelanguage="java"contentType="text/html;charset=GBK"%>

<%@pageimport="java.util.*"%>

<%!

//下面方法Trans的作用是将StringBuffer中的的回车符号换为

StringBufferTrans(StringBuffersour){

for(inti=0;i

if(sour.substring(i,i+1).equals("\n")){

sour.delete(i,i+1);

sour.insert(i,"
");

}

}

returnsour;

}

%>

<%

request.setCharacterEncoding("GBK");

//接收text和password类信息

Stringname=request.getParameter("name");

Stringpwd=request.getParameter("pwd");

Stringnumber=request.getParameter("number");

application.setAttribute("msg",name);

application.setAttribute("msg1",pwd);

application.setAttribute("number",number);

out.println("username:

"+name+"
");

out.println("password:

"+pwd+"
");

out.println("phonenumber:

"+number+"
");

//接收radio类信息

out.print("性别是:

");

out.println(request.getParameter("sex"));

out.println("
");

//接收单选的select信息

out.println("户口所在地:

");

out.println(request.getParameter("City"));

out.println("
");

//接收多选的select信息

out.println("曾经居住过的城市:

");

Stringjuzhu[]=request.getParameterValues("juzhu");

if(juzhu!

=null){

for(inti=0;i

out.println(juzhu[i]+"  ");

}

//接收checkbox类信息

out.print("爱好:

");

Stringjob[]=request.getParameterValues("JOB");

if(job!

=null){

for(inti=0;i

out.println(job[i]+"
");

}

Stringaihao=request.getParameter("aihao");

application.setAttribute("aihao",aihao);

out.println("其他爱好:

"+aihao+"
");

out.println("
");

out.println("
");

//处理textbox中的信息

Stringstr=request.getParameter("liuyan");

StringBufferliuyan=newStringBuffer(str);

liuyan=Trans(liuyan);

out.println("用户备注信息是:


");

out.println(liuyan);

%>


返回登陆界面

 

2.用户登录

本模块是程序的主界面,已注册用户可以通过填写正确信息后进入聊天室。

登录界面代码为:

1.html

DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"

"http:

//www.w3.org/TR/html4/loose.dtd">

网络聊天室

系统登陆

账号:

150">

密码:

150">





还没注册吧?

快点击这里

登陆显示如下:

之后用户进行登录

如用户信息填写不正确或用户还没有注册,网页会提示用户信息错误;没有注册用户可以通过本届面点及注册后进入注册页面。

如果输入的用户名或者密码不匹配所示的错误提示如下:

错误信息源代码为:

login.jsp

<%@pagelanguage="java"contentType="text/html;charset=GBK"%>

<%

Stringname=request.getParameter("name");

Stringpwd=request.getParameter("pwd");

if(application.getAttribute("msg").equals(name)&&application.getAttribute("msg1").equals(pwd))

{

session.setAttribute("login","ok");

session.setMaxInactiveInterval(-1);

response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);

response.setHeader("Location","main.jsp");

}

else

{

out.println("用户名或者密码输入错误!

");

}

%>

返回登陆界面

3.用户主页

在用户在成功登录后进入自己主页,可以选择进入留言版或注销,主页界面为:

主页代码:

main.jsp

<%@pagecontentType="text/html;charset=GBK"%>

<%@includefile="checkvalid.jsp"%>

要进入留言界面吗?

注销

注销则返回登陆界面重新登录

注销代码:

loginout.jsp

<%@pagecontentType="text/html;charset=GBK"%>

<%

session.invalidate();

response.sendRedirect("1.html");

%>

在这里涉及主界面与登录界面相连接的一个小程序,checkvalid.jsp没有它就无法实现界面跳转,代码如下:

<%

Objectval=session.getAttribute("login");

Stringstrval=(String)val;

if(!

"ok".equals(strval))

{

%>

forwardpage="1.html"/>

<%

}

%>

4.用户留言

在用户选择进入留言室后显示界面如下所示:

(当前留言为空)

在发送框输入我爱javaweb,然后点击发送键

在此界面用户可以输入留言点击“发送”后即可将留言发送出去,然后在上方的空白处将发送内容显示出来,同时显示用户名、信息和留言时间。

具体显示如下:

这部分程序可以划分为三小块,分别是主框架,发送部分和显示部分

代码如下:

主框架chatting,html

聊天室

发送部分talk.jsp

<%@pagelanguage="java"contentType="text/html;charset=GBK"%>

<%

java.text.SimpleDateFormatformatter=newjava.text.SimpleDateFormat("yyyy-MM-ddHH:

mm:

ss");

java.util.DatecurrentTime=newjava.util.Date();//得到当前系统时间

Stringstr_date1=formatter.format(currentTime);//将日期时间格式化

request.setCharacterEncoding("GBK");

Stringmywords=request.getParameter("message");

Objecto=application.getAttribute("msg");

Stringstr1=(String)o;

application.log(mywords);

if(mywords!

=null)

{

intlen_mywords=mywords.length();

intflag=1;

application.log(""+len_mywords);

for(inti=0;i

{

if(mywords.charAt(i)=='<')

{

flag=0;

}

}

if(flag==1)

{

mywords=str1+":

"+mywords+str_date1;

Objectobj=application.getAttribute("words");

if(obj==null)

{

application.setAttribute("words",mywords+"
");

}

else

{

application.setAttribute("words",obj.toString()+mywords+"
");

}

}

}

%>

显示部分:

message.jsp

<%@pagelanguage="java"contentType="text/html;charset=gb2312"%>

functionscrollWindow()

{

this.scroll(0,65000);

setTimeout('scrollWindow()',200);

}

scrollWindow();

聊天室

<%=application.getAttribute("words")%>

实验书要求实现多人注册,所以我又重新注册了登录了一个新用户www,并在留言板发送了信息,最后显示的界面如下:

5实验总结

这次实验是网络聊天室,而聊天工具在我们日常生活中必不可少,常用的通讯工具是手机和电脑,常用的软件主要有QQ、短信。

飞信等等。

这些软件在我们日常生活中很常用,而且我们用的也很顺手,但却从来没有想过它是怎么一步一步编程、调试而最终为大家普遍使用的。

而这次我自己体验了一下简单的聊天室的制作,虽然感觉很新鲜也很好奇,但也感到很吃力。

通过这次试验中对聊天室的制作过程有了初步的了解并学会了很多知识,最大的收获是学会了如何使用application来存储,调用并且匹配信息。

其实在实验中最困难的并不是代码的编写问题,因为大部分代码课堂都练习过,如注册和显示信息、留言等在书本上就有完整的代码,可以拿来就直接用。

而困难的是不知道怎么几部分连接起来,特别是登陆界面和注册以及登陆很留言版之间的连接。

经过和同学反复请教和交流,在不懈的努力下终于将程序完善至能过正常的跳转页面。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2