java socket通信代码3

package implement;//包定义
import java.io.*;
import java.net.*;

public class ServerThread extends Thread{//继承Thread类,实现多线程

	Socket socket=null;
	//保存与本线程相关的Socket对象;
	int clientnum;
	//保存本进程的客户计数
	/*构造方法 */
	public ServerThread(Socket socket,int num){
		this.socket =socket;
		clientnum=num+1;
		
		}
	public void run(){//线程主体
	
		try{
			String line;
			BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
			//由Socket对象得到输入流,并构造相应的BufferedReader对象,用于从client接受信息
			PrintWriter os=new PrintWriter(socket.getOutputStream());
			//由Socket对象得到输出流,并构造相应的BufferedReader对象;用于向client发送信息
			BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
			//由系统标准输入设备构造BufferedReader 对象
			System.out.println("Client:"+clientnum+" "+is.readLine());
			line=sin.readLine();
			//从键盘读入一字符串
			while(!line.equals("bye")){
				os.println(line);
				//向客户端输出改字符串
				os.flush();
				//刷新输出流,使client马上接收到该字符
				System.out.println("Server:"+line);
				//在Server上显示输入字符串
				System.out.println("Client:"+clientnum+is.readLine());
				//从client读入一个字符串,并打印到标准输出上
				line=sin.readLine();
			}
			os.close();
			is.close();
			socket.close();
			//serverSocket.close();
		}catch(Exception e){
			System.out.println("Error:"+e);//输出异常
		}
	}
	
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值