我对支柱有疑问。

我有一个HashMap,其中有近50个条目。现在,我必须在动作类(例如TestAction)中定义此映射。如您所知,该动作类扩展了Action类。现在,我的怀疑是根本的:我应该将地图加载为静态地图吗?加载此Map静态有什么好处?如果我要将此Action类调用100次,那么此映射是否只会被加载一次?

另外,并非每次执行动作类调用时,我都可以访问此地图。如果我将此动作类称为100次,则可能仅需要访问40次。

如果我将此地图加载为

public Map getMap()
{
 Map testMap= new HashMap();
 testMap.put("Harish",25);
 testMap.put("Ravi",55);
 return testMap();
}


缺点是什么?哪种方法最好?

最佳答案

如果您的数据永不改变,则静态加载似乎是最佳选择。它只会被加载一次。

      private static final Map testMap = new HashMap();
      static {
        testMap.put("Harish",25);
        testMap.put("Ravi",55);
      }




如果有时需要更改它,则其他因素(例如测试和线程)可能会导致其他选项更为可取。

07-24 21:24