将哪个集合用于一种或多种类型的数据



我有以下表格结构:

表名:lookup

clmns: appname, wfname, wfdir, sessname

所以对应于一个特定的appname, wfname和wfdir,我有多个sessname。

  app1,wf1,anydir,sess1
  app1,wf1,anydir,sess2
  app1,wf1,anydir,sess3
  app2,wf2,anydir2,sess1
  app2,wf2,anydir2,sess2

由于某种原因,我无法规范化表。那么存储来自查找表的数据的最好方法是什么呢?我应该使用哪个集合?

我所做的是:创建了每个列的数组,然后我存储了这些数据。存储这类数据的更有效的方法是什么呢?

一对多的建议选项:

1) Map,其值为Set s。2) Apache的MultiMap类,它封装了这个概念。

但听起来你实际上想走另一条路。最简单的方法是实现一个Comparable对象,它包含您想要使用的三个单独的键,并根据它们实现.equals().hashcode(),并将其用作Map的键。

您可以创建一个Row类

class Row {
   String appname;
   String wfname;
   String wfdir;
   String sessname ;
 ...

和使用LinkedHashMap来保持结果集顺序

相关内容

最新更新