版权声明:禁止侵权,打击盗版! https://blog.csdn.net/ChenGX1996/article/details/82319462
在IDEA工具下进行此聊天室的实现;
先进行服务器的编写:
import java.io.IOException;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class SingleThreadServer {
public static void main(String[] args){
try {
//创建服务器端口
ServerSocket server = new ServerSocket(3366);
System.out.println("等待<天涯>连接...");
//等待客户端连接,等待过程为阻塞状态
Socket client = server.accept();
//获取客户端的输入输出流
PrintStream out = new PrintStream(client.getOutputStream(),true,"UTF-8");
out.println("hello,I am Server!");
Scanner in = new Scanner(client.getInputStream());
if(in.hasNextLine()){
System.out.println("<天涯>发来的消息为:"+in.nextLine());
}
//关闭流;
out.close();
in.close();
client.close();
} catch (IOException e) {
System.out.println("正在天涯赶来的路上...");
}
}
}
再进行客户端的代码实现:
package talking;
import java.io.IOException;
import java.io.PrintStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class SingleThreadClient {
public static void main(String[] args){
try {
//接收服务器端口,建立连接;
Socket server = new Socket("127.0.0.1", 3366);
Scanner in = new Scanner(server.getInputStream());
PrintStream out = new PrintStream(server.getOutputStream(),true,"UTF-8");
if(in.hasNextLine()){
System.out.println("<大海>发来的消息为:"+in.nextLine());
}
out.println("Hi,I am Client"+server.getPort());
//关闭流
in.close();
out.close();
server.close();
} catch (IOException e) {
System.out.println("正在大海赶来的路上...");
};
}
}
好了,我们的单线程聊天系统<海内天涯>就告一段落了!
运行此聊天系统:
先运行<大海>系统:
再运行<天涯>系统:
将结果反馈给<大海>:
简单的<海内天涯>已经完成,进阶版待续...