Java 如何使用使用OracleCachedRowSet的模型加速对JTable的排序?
我正在使用JTable with model,它将数据保存在Java 如何使用使用OracleCachedRowSet的模型加速对JTable的排序?,java,performance,swing,sorting,jtable,Java,Performance,Swing,Sorting,Jtable,我正在使用JTable with model,它将数据保存在cachedRowSetwithoraclechedrowsetimplementation中。 在getValueAt()方法中,我需要使用cachedRowSet.absolute()方法将行集指针移动到所需的行。 看起来,cachedRowSet.absolute()非常慢,当我对包含大量行的表进行排序(使用java默认排序器)时,排序过程非常慢,可能需要几秒钟 是否有人有办法加快排序过程(有没有办法不在getValueAt()中
cachedRowSet
withoraclechedrowset
implementation中。
在getValueAt()
方法中,我需要使用cachedRowSet.absolute()
方法将行集指针移动到所需的行。
看起来,cachedRowSet.absolute()
非常慢,当我对包含大量行的表进行排序(使用java默认排序器)时,排序过程非常慢,可能需要几秒钟
是否有人有办法加快排序过程(有没有办法不在getValueAt()
中使用absolute()
或加快absolute()
方法)
下面是使用absloute()
方法的getValueAt()
示例:
public Object getValueAt(int row, int col) {
try {
if (!rowSet.absolute(row + 1)) {
return null;
}
return rowSet.getObject(col + 1);
} catch (SQLException e) {
return null;
}
}
谢谢,CachedRowSet.absolute()可能不是速度慢的原因,因为它是从内存加载的
CachedRowSet
根据,可能不是用于大型数据集的正确工具,但是一旦您拥有了CachedRecordSet
,它就是负责排序的Java默认分类器
试一下。看一眼一张照片