- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA即时通信系统指导书讲述
PAGE
PAGE 35
JAVA编写即时通信系统指导书
即时通信系统简介
模拟聊天系统包含两个方面,服务器端和客户端。
服务器端任务:建立一个ServerSocket,与客户端建立通信通道,不断侦听是否有客户端连接或者断开连接。 服务器端是一个信息转发中心,所有客户端的信息都传到服务器端,由服务器端根据要求分发信息。
客户端任务:建立一个Socket,与服务器端建立通信通道,向服务器端发送信息,并接收来自服务器的信息。
即时通信系统测试
1、服务器端运行Server.java。弹出如图1-1所示图形界面,点击“开始”,将弹出如图1-2所示图形界面,服务器即打开。
图1-1 图1-2
2、客户端运行Client.java,将弹出如图1-3所示图形界面,输入服务器的ip,port,以及帐户名(自已姓名)登录,将弹出如图1-4所示图形界面。点击如图1-5所示图形界面的下拉列表,在发???框中输入信息发送,就可以进行群聊或私聊。
图1-3 图1-4 图1-5
即时通信系统设计与实现操作步骤。
?任务一(1) 目的:通过网络编程,让客户端与服务器端互通字节信息。老师做服务器,学生做客户端。具体操作步骤:教师与学生都新建一个java project,命名如zhangsanQQchat(以本人姓名+QQchat为文件名),在src下新建一个other包,教师在other包下新建Server.java类并运行。指导学生在other包下新建Client.java类并运行,学生逐个与教师连接测试。通过测试,教师检查学生完成情况并记录。
Server.java代码如下:
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) {
ServerSocket server;
try {
server = new ServerSocket(1234);
Socket sk = server.accept();
InputStream is = sk.getInputStream();
int i;
System.out.println(这是服务器端接收到的信息);
while ((i = is.read()) != -1) {
System.out.print((char) i);
}
server.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Client.java代码如下:
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
Socket client;
try {
client=new Socket(localhost,1234);
OutputStream os=client.getOutputStream();
os.write(z);
os.write(h);
os.write(a);
os.write(n);
os.write(s);
os.close();
client.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
?任务二(2) 目的:通过网络编程,让同学们与老师互通字节信息。学生做服务器,老师做客户端。指导学生在other包下新建Server.java类并运行。教师在other包下新建Client.java类并运行,逐个与学生连接测试,教师检查学生完成情况并记录。代码同上。
网络编程总结如下:
在服务器端先定义一个Server.java类。①在此类中的main方法中,创建一个ServerSocket 实例,指定打开一个端口,让其它机器访问。②此ServerSocket 实例调用方法accept()来等待其它机器连接,若有连接返回一个Socket实例③Socket实例可以调用getInputStream()方法获取客户端发来的信息。④将这些信息输出,关闭各种流及连接。
您可能关注的文档
- INFORMIX--4GL新手进阶整理讲述.doc
- INFORMIX培训讲述.pptx
- HXD3C型机车检查程序讲述.doc
- INCOTerms国际贸易术语总结讲述.pptx
- iOS的数据安全讲述.pptx
- IOT服务器性能瓶颈测试报告讲述.doc
- INSQL-EXCEL做报表技术文档讲述.doc
- Iliad英文讲述.pptx
- Internet技术与应用论文讲述.doc
- IPD技术评审(HW)讲述.pptx
- 人教版四年级上册数学期末测试卷【含答案】.docx
- 六年级下册道德与法治第四单元《让世界更美好》测试卷精品带答案.docx
- 人教版四年级上册数学期末测试卷含答案(b卷).docx
- 人教版数学四年级上册期末测试卷及参考答案(考试直接用).docx
- 人教版四年级上册数学期末测试卷附答案(综合题).docx
- 人教版小学数学四年级上册期末测试卷及参考答案【突破训练】.docx
- 人教版小学数学四年级上册期末测试卷(word).docx
- 人教版四年级上册数学期末测试卷及答案(名校卷).docx
- 人教版五年级下册数学期末测试卷(考点提分).docx
- 人教版小学数学四年级上册期末测试卷及完整答案【名校卷】.docx
文档评论(0)