欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java 基于TCP协议的Socket编程 —— 服务器端程序

程序员文章站 2022-03-15 21:21:16
...

完成功能: (1)服务器先运行起来;  (2)客户端连接服务器,从键盘输入数据,然后发送到服务器;  (3)服务器回应所收到的信息。 



import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

import org.omg.CORBA.portable.InputStream;
import org.omg.CORBA.portable.OutputStream;

public class Main {
	public static void main(String[] args) throws IOException{
		//创建Socket对象
		ServerSocket ss = new ServerSocket(1000); //1000是特定的端口
		while(true){
			Socket socket = ss.accept();
			System.out.println("socket信息:" + socket);
			
			InputStream is = (InputStream) socket.getInputStream();
			OutputStream os = (OutputStream) socket.getOutputStream();
			BufferedReader in = new BufferedReader(new InputStreamReader(is)); 
			PrintWriter out = new PrintWriter(os);
			
			//下一步读取客户端传来的数据,然后写出去
			
			String strtmp = null;
			StringBuffer sbuf = new StringBuffer();
			
			// 实际读取数据
			while(!("exit").equals(strtmp = in.readLine())){
				sbuf.append(strtmp);  // 如果输入的不是 exit 就把内容添加到 sbuf 中
			}
			// 写数据
			System.out.println("服务器输出的信息是:" + sbuf.toString());
			out.println("服务器端获取的信息是" + sbuf.toString());;
			
			// 关闭输入输出流、套接字
			out.close();
			in.close();
			is.close();
			os.close();
			socket.close();
		}
		
		
	}
}

 

相关标签: TCP