package com.aaa.test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class TcpServer {
public static void main(String[] args) throws Exception{
ServerSocket server=new ServerSocket(9000);
System.out.println("服务已启动");
while(true){
Socket socket = server.accept();
System.out.println("获取到一个客户端连接");
Service service = new Service(socket);
new Thread(service).start();
}
}
}
package com.aaa.test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
public class Service implements Runnable{
private Socket socket;
public Service(Socket socket){
this.socket=socket;
}
public void pross() throws IOException{
InputStream inputStream = socket.getInputStream();
BufferedReader bufferread=new BufferedReader(new InputStreamReader(inputStream));
OutputStream outputStream = socket.getOutputStream();
BufferedWriter bufferedwriter=new BufferedWriter(new OutputStreamWriter(outputStream));
while(true){
String readLine = bufferread.readLine();
System.out.println("客户端:"+readLine);
bufferedwriter.write(readLine);
bufferedwriter.newLine();
bufferedwriter.flush();
}
}
@Override
public void run() {
try {
pross();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.aaa.test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.util.Scanner;
public class TcpClient {
public static void main(String[] args) throws IOException {
Socket socket=new Socket("localhost",9000);
//向服务器写入
OutputStream outputStream = socket.getOutputStream();
BufferedWriter bufferedwriter=new BufferedWriter(new OutputStreamWriter(outputStream));
//从服务器读出
InputStream inputStream = socket.getInputStream();
BufferedReader bufferread=new BufferedReader(new InputStreamReader(inputStream));
Scanner sc=new Scanner(System.in);
while(true){
System.out.println("请输入:");
String words=sc.next();
bufferedwriter.write(words);
bufferedwriter.newLine();
bufferedwriter.flush();
//接收服务器端返回的信息
String readLine = bufferread.readLine();
System.out.println("服务器:这是我回复给你的"+readLine);
}
}
}