我有一个以XML格式存储数据的应用程序。当用户请求数据时,XML被解析为实体,然后通过类似servlet的东西向他显示。
我的问题是,在每次刷新之后,像servlet这样的东西必须再次处理数据并且解析XML是昂贵的。还有太多的XML要将所有数据存储在内存中。
我正在考虑像资源池这样的东西,程序要求池,如果池中有名称 foo 的实体。如果有,则从池返回 foo ,如果没有,则从XML创建 foo 并保存到池中。
这样的事情:
Entity entity = null;
entity.setId(id);
for(Entity entityFromPool : pool.getAllEntities()){
if(entityFromPool.getId().equals(entity.getId())){
entity = entityFromPool();
isInPool = True;
}
if(!isInPool){
entity = getEntityFromXML();
}
我已经阅读了 apache对象池,但如果我理解正确,我就无法存储f.e. 5个不同的实体,然后询问池中是否存在具有特定id的实体。
是否有任何图书馆可以解决我的问题? 非常感谢!