import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.*;
public class SocketComm {
public static void main(String[] args){
new Server().start();
new Client().connect("127.0.0.1", 1234);
}
}
class Client {
public void connect(final String host, final int port) {
new Thread(new Runnable() {
@Override
public void run() {
try {
Socket s = new Socket(host, port);
DataInputStream dis = new DataInputStream(
s.getInputStream());
String msg = dis.readUTF();
System.out.println(msg);
} catch (Exception e) {
e.printStackTrace(System.err);
}
}
}).start();
}
}
class Server implements Runnable {
public void start() {
Thread t = new Thread(this);
try {
t.sleep(5000);
t.start();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void run() {
ServerSocket ss = null;
Socket s = null;
try {
ss = new ServerSocket(SERVER_PORT);
s = ss.accept();
DataOutputStream dos = new DataOutputStream(s.getOutputStream());
dos.writeUTF("好好考试,争取被录取");
} catch (Exception e) {
e.printStackTrace(System.err);
} finally {
try {
if (s != null) {
s.close();
}
if (ss != null) {
ss.close();
}
} catch (IOException e) {
e.printStackTrace(System.err);
}
}
}
private static final int SERVER_PORT = 1234;
}