前言
这个小型的聊天系统我没有用swt去做出界面出来,因为之前用的32位的,现在换了个环境导致之前的包不能用了,只能以控制台进行信息的交互。另外,这里介绍的是基于TCP的,UDP的简单一些就不介绍了。
基本代码
服务端
package thread.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Server {
public static void main(String[] args) {
// 指定服务器启动的时候占用的端口号,端口号取值是0~65535,1024一下预留给系统
ServerSocket ssk = null;
Socket sk = null;
try {
ssk = new ServerSocket(8888);
System.out.println("服务器启动成功...");
while (true) {
sk = ssk.accept();
new Thread(new MyServer(sk)).start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
class MyServer implements Runnable {
private Socket sk = null;
private BufferedReader read = null;
private PrintWriter pw = null;
public MyServer(Socket sk) {
this.sk = sk;
}
@Override
public void run() {
Scanner sc = new Scanner(System.in);
try {
read = new BufferedReader(new InputStreamReader(sk.getInputStream()));
pw = new PrintWriter(sk.getOutputStream());
String line = read.readLine();
System.out.println("客户端问:" + line);
while (!"bye".equalsIgnoreCase(line)) {
System.out.p