在解析日志文件期间使用Java集合

时间:2013-10-09 13:27:14

标签: java parsing collections

  1. 读取日志文件后,我想将原始日志(String)提供给另一个只解析日志的组件。
  2. 应解析每个日志条目。
  3. 应将每个已解析的数据分配给特定的LogEntry对象。
  4. 应该将所有LogEntry个对象传递给另一个组件,将它们存储在数据库中。

    现在的问题是:将解析后的LogEntry对象保存在Java集合(例如ArrayList)中,直到完全解析原始日志,然后将此集合传递给存储组件,这是一个好主意吗?

  5. 请注意,我希望保留单一责任原则,因此我不想解析日志条目并将其存储在同一时间。
    如果您有任何其他建议请告诉我。

3 个答案:

答案 0 :(得分:0)

我不明白为什么除非创建一个更大的LogEntryList类的类有一些用例好处。我会避免使用arrayList,但有利于使用linkedList。 ArrayList并不总是最快的添加内容。看看这样的事情:http://bigocheatsheet.com/看看哪种结构最符合你的需求。

答案 1 :(得分:0)

是的,将数据保存到集合是正确的。但你应该使用哈希集我认为数据将是大量的。即使数据庞大,它也能提供快速访问。

答案 2 :(得分:0)

我不建议使用ArrayList,因为“放大”-process是非常费力的。我强使用LinkedList 。您只需添加和删除日志。

下一点是关于内存利用率,如果你有足够的内存,为什么不呢。