当前位置 : 主页 > 编程语言 > java >

使用TCP协议编写一个网络程序,设置服务器程序监听端口为8002,当与客户端建

来源:互联网 收集:自由互联 发布时间:2022-09-02
22、使用TCP协议编写一个网络程序,设置服务器程序监听端口为8002,当与客户端建立连接后,向客户端发送“hello world”,客户端接负责将信息输出 提示: 1)使用ServerSocket创建服务器


22、使用TCP协议编写一个网络程序,设置服务器程序监听端口为8002,当与客户端建立连接后,向客户端发送“hello world”,客户端接负责将信息输出
提示:
1)使用ServerSocket创建服务器端对象,监听8002端口,调用accept()方法等待客户端连接,当与客户端连接后,调用Socket的getOutputStream()方法获得输出流对象,输出“hello world。
2)使用Socket创建客户端对象,指定服务器的IP地址和监听端口号,与服务器端建立连接后,调用Socket的getInputStream()方法获得输入流对象,读取数据,并打印出来
3)在服务器端和客户端都调用close()方法释放socket资源。

服务端


import java.io.*;
import java.net.*;
public class Test04 {
public static void main(String[] args) throws Exception {
new TCPServer().listen();
}
}
class TCPServer {
public void listen() throws Exception {
ServerSocket serverSocket = new ServerSocket(8002);
Socket client = serverSocket.accept();
OutputStream os = client.getOutputStream();
os.write("hello world").getBytes());
Thread.sleep(5000);
os.close();
client.close();
}
}



客户端


import java.io.*;
import java.net.*;
public class Test05 {
public static void main(String[] args) throws Exception {
new TCPClient().connect();
}
}
class TCPClient {
public void connect() throws Exception {
Socket client = new Socket(InetAddress.getLocalHost(), 8002);
InputStream is = client.getInputStream();
byte[] buf = new byte[1024];
int len = is.read(buf);
System.out.println(new String(buf, 0, len));
client.close();
}
}





网友评论