package com.mx.socket1;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
public class SocketThread extends Thread {
private DataInputStream inputStream;
public SocketThread(DataInputStream inputStream){
this.inputStream=inputStream;
}
@Override
public void run() {
while (true){
try {
System.out.println(inputStream.readUTF());
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
package com.mx.socket1;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class SocketServer {
public static void main(String[] args) throws IOException {
Scanner scanner = new Scanner(System.in);
ServerSocket serverSocket = new ServerSocket(6666);
Socket socket = serverSocket.accept();
DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());
new SocketThread(dataInputStream).start();
while (true){
System.out.println("请输入要发送的内容");
String next = scanner.next();
outputStream.writeUTF(next);
}
}
}
package com.mx.socket1;
import com.mx.socket1.SocketThread;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.util.Scanner;
public class SocketClient {
public static void main(String[] args) throws IOException {
Socket socket = new Socket();
socket.connect(new InetSocketAddress("localhost",6666),1000);
DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());
new SocketThread(dataInputStream).start();
Scanner scanner = new Scanner(System.in);
while (true){
System.out.println("请输入要发送的内容");
String next = scanner.next();
outputStream.writeUTF(next);
}
}
}