Server.java
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
final int PORT = 2000;
Person person = new Person();
ServerSocket server = new ServerSocket(PORT);
System.out.println("Server listen port: " + PORT);
Socket socket = server.accept();
ObjectOutputStream oos = new ObjectOutputStream(socket
.getOutputStream());
person.id = 1;
person.name = "Paul";
person.age = 30;
person.sex = SEX.MALE;
person.data[0] = 0;
person.data[1] = 1;
person.data[person.data.length - 2] = person.data.length - 2;
person.data[person.data.length - 1] = person.data.length - 1;
for (int i = 0; i < 1000; i++) {
oos.writeObject(person);
System.out.println(person);
oos.reset();
person.id++;
person.age++;
}
oos.flush();
oos.close();
socket.close();
server.close();
}
}
Client.java
import java.io.ObjectInputStream;
import java.net.Socket;
public class Client {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
final int PORT = 2000;
Person person;
Socket socket = new Socket("127.0.0.1", PORT);
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
for (int i = 0; i < 1000; i++) {
person = (Person) ois.readObject();
System.out.println(person);
}
ois.close();
socket.close();
}
}
Person.java
import java.io.Serializable;
public class Person implements Serializable {
private static final long serialVersionUID = -8409611229326504290L;
public long id;
public String name;
public int age;
public SEX sex;
public int[] data = new int[65536];
public String toString() {
return "ID: " + id + "\n" + "NAME: " + name + "\n" + "AGE: " + age
+ "\n" + "SEX: " + sex + "\n" + "DATA: " + data[0] + " "
+ data[1] + " " + data[data.length - 2] + " "
+ data[data.length - 1] + "\n";
}
}
enum SEX {
MALE, FEMALE
};