- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机网络实验二javaSocket
实验二、基于socket的网络通信设计(java语言实现)
内容:综合运用网络协议、编程语言、API和图形界面实现基于socket建立、监听、连接、发送数据和接收数据的网络通信程序。
基本要求:两人一组为单位,一个负责发送程序设计,一个负责接收程序设计,程序设计完成后,可以进行字符数据收发或文件传输。
//Server.java
package qq;
import java.net.*;
import java.io.*;
public class Server extends Thread {
ServerSocket skt;
Socket Client[]=new Socket[10];
ServerThread server[] = new ServerThread[10];
// Socket Client1=null;
//TextArea in;
int port;
Face chat;
public Server(int port, Face chat) {
try {
this.port = port;
skt = new ServerSocket(port);
this.chat = chat;
} catch (IOException e) {
chat.ta.append(e.toString());
}
}
public void run() {
chat.ta.append(等待连线);
int i = 0;
while (true) {
try {
if(i == 10)break;
Client[i++] = skt.accept(); /**//* 接收客户连接 */
//当有客户端连接时就新建一个子线程
server[i]= new ServerThread(Client[i], this.chat);
server[i].start();
chat.ta.append(客户端 + Client[i].getInetAddress() + 已连线\n);
Thread.sleep(1);
} catch (SocketException e) {
} catch (IOException e) {
chat.ta.append(e.toString());
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public void dataout(String data) {
for(int j = 0; j 10; j++){
if (Client[j] != null)
server[j].dataout(data);
}
}
}
class ServerThread extends Thread {
// ServerSocket skt;
Socket Client;
//TextArea in;
int port;
//int i;
BufferedReader theInputStream;
PrintStream theOutputStream;
String readin;
Face chat;
//服务端子线程
public ServerThread(Socket s, Face chat) {
///this.i = ++i;
Client = s;
//this.port = port;
//skt = new ServerSocket(port);
this.chat = chat;
}
public void run() {
try {
theInputStream = new BufferedReader(new InputStreamReader(Client
.getInputStream()));
theOutputStream = new PrintStream(Client.getOutputStream());
while (true) {
readin = theInputStream.readLine();
chat.ta.append(readin + \n);
Thread.sleep(1);
}
} catch (SocketException e) {
chat.ta.append(连线中断!\n);
chat.clientBtn.setEnabled(true);
chat.serverBtn.setEnabled(true);
chat.tfaddress.setEnabled(true);
chat.tfport.setEnabled(true);
try {
Client.close();
Client = null;
您可能关注的文档
- 英讯三模卷理.doc
- 英语冠词的分类及用法.doc
- 英语作文句子素材小汇.doc
- 英语周练习题.doc
- 英语口语话题资料-food-applepie.doc
- 英语实用网址.doc
- 英语写作技巧_读写任务.ppt
- 八年级下7-10.doc
- 英语教师认证初中英文教案.doc
- 英语大赛形象代言策划书.doc
- 19秋福师《实变函数》在线作业一[1]答案.pdf
- 2022年金属非金属矿山(地下矿山)安全管理人员考试内容及考试题库含答案参考29.pdf
- 2022-2023学年山西省大同一中七年级(上)期末生物试卷(附答案详解).pdf
- 2022年山东专升本计算机真题及完整答案解析.pdf
- (通用)大学生宪法知识竞赛题库及答案.pdf
- 2023年慢性病防治工作计划4319.pdf
- 2022-2023学年云南省红河州高三第一次复习统一检测(一模)数学试题+答案解析(附后).pdf
- (完整版)北师大版初中(七上)生物复习提纲及概念图汇总.pdf
- 2022年版小学数学新课程标准电子版.pdf
- 2023年意识形态领域分析研判报告精选.pdf
文档评论(0)