我有一个Set<String> catNames
,其中包含一个巨大的猫名列表(~35K),我需要从数据库(Sybase)加载所有这些Cat
个对象并将它们放入{{ 1}}:每行包含cat名称和相应的cat对象。
知道我正在使用OJB 1.4(它加载了对象Map<String, Cat> cats
及其所有依赖项,如Cat
,Food
...),这是更好的加载方式如此庞大的猫咪名单?
解决方案1:每个catName访问一次数据库
Clothes
然后cat = getCatByName(catName);
和cats.put(catName, cat);
解决方案2:对所有猫名称的数据库进行一次访问
return cats;
然后
cats = getCatsByNames(catNames);
和for (Iterator iterator = cats.iterator(); iterator.hasNext();) {
cat = (Cat)iterator.next();
cats.put(cat.getName(), cat);
}
PS: return cats;
使用getCatsByNames