java的标准序列化方法有没有把对象的变量名也序列化到数据中?
我感觉好像把变量名也写到数据中了。
如果是,那还得想办法缩写变量名才行?
其他序列化工具怎么样?
关于序列化的陷阱和最佳实践,可以参考 <Effective Java 2> 的 Item 74 - 78一般来说,网络传递的话不建议用Object打成序列化进行传递
既然是走SOCKET了,那还是以协议传输来的比较好,还可以脱离语言范围,兼容其他语言的客户端可以自己定义序列化格式。
实际上,应该自己定义序列化格式。
方法是在你 implements Serializable 的类里实现下面两个方法:
private void writeObject(ObjectOutputStream s)
private void readObject(ObjectInputStream s)
一个是写,一个是读,
ObjectOutputStream 会去调用这两个方法。