Java 实现简单 Socket 通信的示例
简介
Socket 是实现网络编程的一种工具,它能够通过网络连接实现两台计算机之间的数据传输。在 Java 中,可以通过使用 Socket 类和 ServerSocket 类来简单地实现 Socket 通信。
示例 1:Socket 客户端
import java.io.IOException;
import java.io.InputStream;
import java.net.Socket;
public class SocketClient {
public static void main(String[] args) {
try (Socket socket = new Socket("127.0.0.1", 8888)) {
InputStream input = socket.getInputStream();
byte[] bytes = new byte[1024];
int len;
while ((len = input.read(bytes)) != -1) {
System.out.println(new String(bytes, 0, len));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
上述代码实现了一个简单的 Socket 客户端程序。在这个程序中,我们通过 Socket 类建立和服务器的连接,获取其输入流,并从输入流中读取数据。该程序读取到的数据直接输出到控制台中,这里只是为了演示如何使用 Socket 类。在实际应用中,可以根据具体需求对数据进行处理。
示例 2:Socket 服务器端
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class SocketServer {
public static void main(String[] args) {
try (ServerSocket serverSocket = new ServerSocket(8888)) {
while (true) {
Socket socket = serverSocket.accept();
OutputStream output = socket.getOutputStream();
output.write("Hello World".getBytes());
socket.shutdownOutput();
socket.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
上述代码实现了一个简单的 Socket 服务器程序。在这个程序中,我们通过 ServerSocket 类建立和客户端的连接,获取其输出流,并向输出流中写入数据。这里服务器只会向客户端写入一条信息,然后关闭连接。在实际应用中,可以根据具体需求对输入输出流进行处理,从而实现更加复杂的业务逻辑。
总结
以上就是 Java 实现简单 Socket 通信的示例。通过学习这两个示例,我们可以掌握使用 Socket 类和 ServerSocket 类实现 Socket 通信的基本方法,为以后实现更加复杂 Socket 应用程序打下坚实的基础。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java 实现简单Socket 通信的示例 - Python技术站