您的位置:首页 > 理论基础 > 计算机网络

使用TCP协议编写一个网络程序,设置服务器端的监听端口是8002,当与客户端建立连接后,服务器端向客户端发送数据“Hello, world”,客户端收到数据后打印输出。

2017-12-13 18:06 971 查看
使用TCP协议编写一个网络程序,设置服务器端的监听端口是8002,当与客户端建立连接后,服务器端向客户端发送数据“Hello,world”,客户端收到数据后打印输出。

服务器端

import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class TcpServer {

public static void main(String[] args) throws IOException, InterruptedException {
// TODO Auto-generated method stub
ServerSocket serverSocket=new ServerSocket(8001);//创建serversocket对象
Socket client=serverSocket.accept();//调用serversocket的accept接收数据
OutputStream os=client.getOutputStream();//获取客户端输出流
System.out.println("开始与客户端进行交互数据");
os.write("欢迎".getBytes());//当客户端里链接到服务端时,向客户端输出数据
Thread.sleep(5000);//模拟执行与其他功能占用时间
System.out.println("结束与客户端交互数据");
os.close();
client.close();
}

}
客户端

import java.io.IOException;
import java.io.InputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

public class TcpClient {

public static void main(String[] args) throws UnknownHostException, IOException {
// TODO Auto-generated method stub
//创建一个Socket并链接到给出的地址和端口号的计算机
int port=8001;
Socket client=new Socket(InetAddress.getLocalHost(), port);
InputStream is=client.getInputStream();//得到接受的输入流
byte[] buf=new byte[1024]; //定义一个1024个字节数组的缓冲区
int len=is.read(buf);//将数据读到缓冲区
System.out.println(new String(buf,0,len));//关闭socket对象,释放资源
client.close();
}

}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐