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

来源:互联网 发布:ubuntu 16.04 mongodb 编辑:程序博客网 时间:2024/05/05 15:15

使用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 stubServerSocket 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();}}


阅读全文
0 0
原创粉丝点击