java 封装socket
时间: 2023-10-02 13:08:45 浏览: 109
Java socket的一个封装
5星 · 资源好评率100%
Java中封装Socket的方法有很多种,其中比较常用的方式是使用Java的Socket类和ServerSocket类。下面是一个简单的例子:
```
// 客户端代码
public class Client {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 8888);
OutputStream os = socket.getOutputStream();
os.write("Hello, server!".getBytes());
os.close();
socket.close();
}
}
// 服务端代码
public class Server {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(8888);
Socket socket = serverSocket.accept();
InputStream is = socket.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len;
while ((len = is.read(buffer)) != -1) {
baos.write(buffer, 0, len);
}
System.out.println(baos.toString());
is.close();
socket.close();
serverSocket.close();
}
}
```
上面的代码实现了一个简单的客户端和服务端通信的功能。客户端通过Socket连接到服务端的8888端口,并发送一条消息,服务端接收到消息后将其输出到控制台。其中,客户端使用Socket类的getOutputStream方法获取输出流,并通过write方法向服务端发送消息;服务端使用ServerSocket类的accept方法等待客户端连接,并使用Socket类获取输入流,读取客户端发送的消息。需要注意的是,这里使用了try-with-resources语句块,确保资源在使用完毕后正确关闭。
阅读全文