import java.io.*;
import java.net.*;public class MyServer extends Thread {
    ServerSocket server;    int port;    MyServer(int port) {
        this.port = port;
        try {
            server = new ServerSocket(this.port);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }    public static void main(String[] args) {
        MyServer myserver = new MyServer(5678);
        myserver.setDaemon(true); //问题,执行这行的话,客户端的连接就被拒绝
        myserver.start();
    }    public void run() {
        logger = Logger.getLogger(MyServer.class.getName());
        PropertyConfigurator.configure("MyServer.properties");
        try {
            Socket client = server.accept();
            BufferedReader in = new BufferedReader(new InputStreamReader(client
                    .getInputStream()));
            PrintWriter out = new PrintWriter(client.getOutputStream());
            while (true) {
                String str = in.readLine();
                System.out.println(str);
                out.println("has receive....");
                out.flush();
                if (str.equals("end"))
                    break;
            }
            client.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}客户端import java.io.*;
import java.net.*;public class Client {    static Socket server;
    public static void main(String[] args) {
        try {
            server = new Socket(InetAddress.getLocalHost(),5678);
            BufferedReader in = new BufferedReader(new InputStreamReader(server
                    .getInputStream()));
            PrintWriter out = new PrintWriter(server.getOutputStream());
            BufferedReader wt = new BufferedReader(new InputStreamReader(
                    System.in));
            while (true) {
                String str = wt.readLine();
                out.println(str);
                out.flush();
                if (str.equals("end")) {
                    break;
                }
                System.out.println(in.readLine());
            }
            server.close();
        } catch (UnknownHostException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }    }}