Java Android hashMap反序列化
我用java SE编写服务器,用android编写客户端,当我在客户端序列化对象Java Android hashMap反序列化,java,android,apache-mina,Java,Android,Apache Mina,我用java SE编写服务器,用android编写客户端,当我在客户端序列化对象Map,然后将其传递给服务器时,服务器无法反序列化对象,反之亦然。因此,当我尝试反序列化另一个对象时,比如String,或者Date,效果很好。HashMap本身是可序列化的。问题是,如果要序列化此映射实例,它包含的所有键/值也必须可序列化。maps通常应避免在接口中使用,尤其是当涉及序列化时 相反,尝试用包含相同数据的其他数据结构替换地图 例如,创建一个对象,如: public class MyObject imp
Map
,然后将其传递给服务器时,服务器无法反序列化对象,反之亦然。因此,当我尝试反序列化另一个对象时,比如String
,或者Date
,效果很好。HashMap本身是可序列化的。问题是,如果要序列化此映射实例,它包含的所有键/值也必须可序列化。map
s通常应避免在接口中使用,尤其是当涉及序列化时
相反,尝试用包含相同数据的其他数据结构替换地图
例如,创建一个对象,如:
public class MyObject implements Serializable {
Key keyOfMap;
Value valueOfMap;
}
并发送列表
或同等文件
这应该可以避免所有地图问题。什么类型的序列化?地图中存储了什么类型的数据?所有对象都是实现序列化的。我不这么认为。只有实现java.io.Serializable的类才能使用ObjectOutputStream.WriteObject进行序列化。我考虑过这个问题,但我想知道为什么映射没有反序列化,因为当我在JavaSE中序列化时,服务器很好地反序列化了对象