其实,对于Index这个东东呢,不是出于设计方面的问题,这完全是性能方面的问题,在一个经常搜索和更新的表中建Index确实是非常关键的,当然,在本应用中,它是主要相对于message来说的,它可以大大的提高系统的性能。它有两种方法建立索引,一种是静态的,比如说message一旦建立,那么它的索引也就建立。还有一种是动态的,比如说在一段时间
时间后,再来更新一下message的索引。
///////////////////////////////////////////////////////////////////////////////////////////////
public int getHoursUpdateInterval();返回更新index的小时数
public int getMinutesUpdateInterval();返回更新index的分钟数
public void setUpdateInterval(int minutes, int hours);设定小时数,分钟数,它们都是被存储在一个类似XML的文件中
public boolean isAutoIndexEnabled();指示自动更新index是不是可用
public void setAutoIndexEnabled(boolean value);设定自动更新index的可用性
public Date getLastIndexedDate();返回index最后更新的日期,此日期也存储于类似的XML中
public void addToIndex(ForumMessage message);这也是就是一个message上建立index,这是实时建立的(real-time)
public void removeFromIndex(ForumMessage message);将一个message上的index清除
public void updateIndex();手动的更新index(包含在最后更新日期后建立的所有message)
public void rebuildIndex();相对于前者,它耗时就比较的多,因为它是建立所有的message的index