这里主要展示TCP链接的代码
/**
* 服务器端
* */
public class ServerMain {
public static void main(String[] args) {
try {
//1.创建服务器端套接字对象
ServerSocket serverSocket = new ServerSocket(8080);
//通过循环一直开启监听状态,保证服务器不停
while (true){
//2.接收数据
Socket clientSocket = serverSocket.accept();
//3.获得输入流,拿到数据
DataInputStream dataInputStream = new DataInputStream(clientSocket.getInputStream());
//4.读取内容
String value = dataInputStream.readUTF();
System.out.println(value);
//5.往客户端返回数据
DataOutputStream dataOutputStream = new DataOutputStream(clientSocket.getOutputStream());
dataOutputStream.writeUTF("你好,我是服务器端");
}
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
/**
*客户端
* */
public class ClientMain {
public static void main(String[] args) {
try {
//1.创建套接字对象
Socket socket = new Socket("localhost",8080);
//2.根据套接字对象获取输出流,
DataOutputStream dataOutputStream = new DataOutputStream(socket.getOutputStream());
//3.准备发送数据
dataOutputStream.writeUTF("你好,我是客户端2");
//4.准备接受服务器端的回信
DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
String value = dataInputStream.readUTF();
System.out.println(value);
//关闭流,关闭网络资源
dataOutputStream.close();
socket.close();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}