Java:TCP传输对象
此博客为实例代码,其余请参考我的其他博客:
Java TCP通信:https://blog.csdn.net/qq_39004632/article/details/93598528
Java 多线程Socket:https://blog.csdn.net/qq_39004632/article/details/93599058
Java Socket文件传输:https://blog.csdn.net/qq_39004632/article/details/93599896
客户端代码:
public class ClientObjectTest {
public static void main(String args[]) throws IOException, SocketException, ClassNotFoundException {
Socket client = new Socket("LocalHost", 8000);
InputStream in = client.getInputStream();
ObjectInputStream ObjIn = new ObjectInputStream(in);
Student stu = (Student) ObjIn.readObject();
System.out.println("从服务器端传来的对象是:" + stu);
ObjIn.close();
client.close();
}
}
服务器代码:
public class ServerObjectTest {
public static void main(String args[]) throws IOException, SocketException {
ServerSocket server = new ServerSocket(8000);
Socket s = server.accept();
OutputStream out = s.getOutputStream();
ObjectOutputStream ObjOut = new ObjectOutputStream(out);
ObjOut.writeObject(new Student("李四", 30));
ObjOut.close();
s.close();
server.close();
}
}
class Student implements Serializable {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String toString() {
return "姓名:" + name + " 年龄:" + age;
}
}