使用key从文件中读取hashmap

时间:2017-04-13 08:06:34

标签: hashmap key serializable

我有一个序列化文件HashmapSent.ser,它包含一个格式为

的hashmap
HashMap<String, RequestData> sentHashmap, 

其中RequestData是我创建的POJO。

我的问题是..,是否可以使用密钥从文件中读取hashmap。

当我使用ObjectInputStream.readObject()时,我猜它会将文件中的整个hashmap加载到Memory中。由于Hashmap包含10000个键值对,因此如果我可以使用键读取/加载特定记录将会很好。

请有人帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

我认为实现这是不可能的,因为HashMap是Java中的一个类,并不意味着文件中的任何内容。也许我们可以说一个文件意味着一个字符串到Java,如果你想用一个键搜索文件,字符串必须有自己的常规。例如:json,xml,sqlite等。

另一个重要的事情是我们需要将整个文件加载到内存中。我们可以在上面的示例中选择xml或sqlite。

Json:Json需要将整个文件加载到内存中。 XML:dom4j也需要。 XML:Sax不需要加载整个文件。 sqlite:你只需要连接数据库

这就是解决问题的方法。