首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

经过tcp传输对象

2012-10-30 
通过tcp传输对象?Server.javaimport java.io.ObjectOutputStreamimport java.net.ServerSocketimport ja

通过tcp传输对象

?

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};


热点排行