0

所以,这是我的问题。我有这样的对象

public class FooClass{
    private int fooInt;
    private String fooString, fooString_2;
}

我必须搜索它们,通过它们的任何一个参数来区分它们。另外,我需要将它们存储为二进制文件(ObjectOutputStream等)。到目前为止,我曾想过使用多个ArrayList,或多个,HashMap但后者的问题是我需要执行部分字符串匹配,(beginsWith),所以HashMap我认为这将毫无用处。无论如何,拥有多个相同对象的列表似乎很可怕实施条款,在这一点上,我真的陷入困境并且没有想法。任何帮助将不胜感激!

4

1 回答 1

0

我找到了这篇文章:使用搜索引擎技术进行对象持久性(我还没有完整地阅读它)但我认为这是您正在寻找的解决方案。该解决方案基于 Lucene。

如果您决定使用 Lucene,那么您应该查看那些教程。本教程的一部分还讨论了基本概念,这将帮助您确定此解决方案是否适合您。

如果您希望将数据表示为 Java 对象(我认为这是您真正需要的解决方案),最好使用Compass(构建在 Lucene 之上)。它支持自动编组,这意味着 Compass 在运行时从对象模型中提取所需的属性,并将所需的元数据插入到搜索引擎索引中。看看OSEM - Compass中的对象/搜索引擎映射参考

于 2012-05-16T14:25:37.170 回答